07 2017 档案

摘要:众所周知,无限制下多线程操作共享变量是危险的,为了保证线程安全语义,一般的建议是在操作共享变量时加锁,比方说在用synchronized关键字修饰的方法内读写共享变量。 但是synchronized开销较大,有没有更轻量更优雅的解决方案呢? volatile是轻量级的synchronized,在正确 阅读全文
posted @ 2017-07-20 20:07 qeDVuHG 阅读(1750) 评论(0) 推荐(0) 编辑
摘要:基于版本jdk1.7.0_80 java.util.concurrent.locks.ReentrantReadWriteLock 代码如下 /* * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * 阅读全文
posted @ 2017-07-20 17:47 qeDVuHG 阅读(251) 评论(0) 推荐(0) 编辑
摘要:基于版本jdk1.7.0_80 java.util.concurrent.FutureTask 代码如下 /* * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * * * * * 阅读全文
posted @ 2017-07-20 11:18 qeDVuHG 阅读(252) 评论(0) 推荐(0) 编辑
摘要:基于版本jdk1.7.0_80 java.util.concurrent.CopyOnWriteArrayList 代码如下 /* * Copyright (c) 2003, 2011, Oracle and/or its affiliates. All rights reserved. * ORA 阅读全文
posted @ 2017-07-19 23:55 qeDVuHG 阅读(252) 评论(0) 推荐(0) 编辑
摘要:基于版本jdk1.7.0_80 java.util.concurrent.ScheduledThreadPoolExecutor 代码如下 /* * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * 阅读全文
posted @ 2017-07-19 19:05 qeDVuHG 阅读(356) 评论(0) 推荐(0) 编辑
摘要:基于版本jdk1.7.0_80 java.util.concurrent.ThreadPoolExecutor 代码如下 /* * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * 阅读全文
posted @ 2017-07-19 17:30 qeDVuHG 阅读(465) 评论(0) 推荐(0) 编辑
摘要:基于版本jdk1.7.0_80 java.util.concurrent.ConcurrentHashMap 代码如下 /* * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * * 阅读全文
posted @ 2017-07-19 13:06 qeDVuHG 阅读(418) 评论(0) 推荐(0) 编辑
摘要:基于版本jdk1.7.0_80 java.util.concurrent.DelayQueue 代码如下 /* * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * * * * * 阅读全文
posted @ 2017-07-18 10:38 qeDVuHG 阅读(485) 评论(0) 推荐(0) 编辑
摘要:基于版本jdk1.7.0_80 java.util.concurrent.ConcurrentLinkedQueue 代码如下 /* * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * 阅读全文
posted @ 2017-07-14 19:20 qeDVuHG 阅读(431) 评论(0) 推荐(0) 编辑
摘要:基于版本jdk1.7.0_80 java.util.concurrent.LinkedBlockingQueue 代码如下 /* * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * 阅读全文
posted @ 2017-07-13 14:54 qeDVuHG 阅读(415) 评论(0) 推荐(0) 编辑
摘要:基于版本jdk1.7.0_80 java.util.concurrent.ArrayBlockingQueue 代码如下 /* * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * 阅读全文
posted @ 2017-07-13 00:30 qeDVuHG 阅读(428) 评论(0) 推荐(0) 编辑
摘要:基于版本jdk1.7.0_80 java.util.concurrent.locks.AbstractQueuedSynchronizer.ConditionObject 代码如下 /** * Condition implementation for a {@link * AbstractQueue 阅读全文
posted @ 2017-07-12 20:54 qeDVuHG 阅读(437) 评论(0) 推荐(0) 编辑
摘要:基于版本jdk1.7.0_80 java.util.concurrent.CyclicBarrier 代码如下 /* * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * * * * 阅读全文
posted @ 2017-07-12 19:38 qeDVuHG 阅读(174) 评论(0) 推荐(0) 编辑
摘要:基于版本jdk1.7.0_80 java.util.concurrent.Semaphore 代码如下 /* * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * * * * * * 阅读全文
posted @ 2017-07-12 13:01 qeDVuHG 阅读(273) 评论(0) 推荐(0) 编辑
摘要:基于版本jdk1.7.0_80 java.util.concurrent.CountDownLatch 代码如下 /* * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * * * 阅读全文
posted @ 2017-07-11 18:40 qeDVuHG 阅读(306) 评论(0) 推荐(0) 编辑
摘要:基于版本jdk1.7.0_80 java.util.concurrent.locks.ReentrantLock 代码如下 /* * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * 阅读全文
posted @ 2017-07-11 00:02 qeDVuHG 阅读(366) 评论(0) 推荐(0) 编辑
摘要:基于版本jdk1.7.0_80 java.util.concurrent.locks.AbstractQueuedSynchronizer 代码如下 /* * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * 阅读全文
posted @ 2017-07-08 12:33 qeDVuHG 阅读(407) 评论(0) 推荐(0) 编辑
摘要:如果不用OS提供的mutex,我们该如何实现互斥锁?(不考虑重入的情况) 1. naive lock 最简单的想法是,搞一个volatile类型的共享变量flag,值可以是flase(无锁)或者true(有锁),竞争线程监听flag,一旦发现flag为false,那么尝试cas更新flag为true 阅读全文
posted @ 2017-07-08 12:29 qeDVuHG 阅读(4124) 评论(1) 推荐(4) 编辑
摘要:基于版本jdk1.7.0_80 java.util.concurrent.atomic.AtomicInteger 代码如下 /* * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * 阅读全文
posted @ 2017-07-07 18:16 qeDVuHG 阅读(460) 评论(0) 推荐(0) 编辑
摘要:Java集合框架 JDK7集合框架源码阅读(一) ArrayList JDK7集合框架源码阅读(二) LinkedList JDK7集合框架源码阅读(三) HashMap JDK7集合框架源码阅读(四) LinkedHashMap JDK7集合框架源码阅读(五) Hashtable JDK7集合框架 阅读全文
posted @ 2017-07-07 17:01 qeDVuHG 阅读(520) 评论(0) 推荐(0) 编辑
摘要:基于版本jdk1.7.0_80 java.util.ArrayDeque 代码如下 /* * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * * * * * * * * * * * 阅读全文
posted @ 2017-07-07 16:09 qeDVuHG 阅读(268) 评论(0) 推荐(0) 编辑
摘要:基于版本jdk1.7.0_80 java.util.HashSet java.util.LinkedHashSet 代码如下 HashSet,312行 /* * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights re 阅读全文
posted @ 2017-07-07 13:01 qeDVuHG 阅读(362) 评论(0) 推荐(0) 编辑
摘要:基于版本jdk1.7.0_80 java.util.Hashtable 代码如下 /* * Copyright (c) 1994, 2011, Oracle and/or its affiliates. All rights reserved. * ORACLE PROPRIETARY/CONFID 阅读全文
posted @ 2017-07-07 11:44 qeDVuHG 阅读(380) 评论(0) 推荐(0) 编辑
摘要:基于版本jdk1.7.0_80 java.util.LinkedHashMap 代码如下 /* * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved. * ORACLE PROPRIETARY/CO 阅读全文
posted @ 2017-07-07 10:39 qeDVuHG 阅读(217) 评论(0) 推荐(0) 编辑
摘要:基于版本jdk1.7.0_80 java.util.HashMap 代码如下 /* * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. * ORACLE PROPRIETARY/CONFIDEN 阅读全文
posted @ 2017-07-06 18:50 qeDVuHG 阅读(332) 评论(0) 推荐(0) 编辑
摘要:基于版本jdk1.7.0_80 java.util.LinkedList 代码如下 /* * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved. * ORACLE PROPRIETARY/CONFI 阅读全文
posted @ 2017-07-05 16:38 qeDVuHG 阅读(283) 评论(0) 推荐(0) 编辑
摘要:基于版本jdk1.7.0_80 java.util.ArrayList 代码如下 /* * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved. * ORACLE PROPRIETARY/CONFID 阅读全文
posted @ 2017-07-05 11:47 qeDVuHG 阅读(503) 评论(0) 推荐(0) 编辑
摘要:看到一张很好的图,对着这个图看源码,会清晰许多 阅读全文
posted @ 2017-07-04 17:14 qeDVuHG 阅读(909) 评论(1) 推荐(0) 编辑

点击右上角即可分享
微信分享提示