
锁
文章平均质量分 79
我咋这么优秀呢
这个作者很懒,什么都没留下…
展开
-
线程池原理
线程池原理 以ThreadPoolExecutor为例 private static final ThreadPoolExecutor EXECUTOR_SERVICE = new ThreadPoolExecutor(100,120,60, TimeUnit.SECONDS, new ArrayBlockingQueue<>(1000), ...原创 2019-12-10 19:38:53 · 135 阅读 · 0 评论 -
ConcurrentHashmap的读操作为什么不加synchronized
ConcurrentHashmap的读操作为什么不加synchronized 去看ConcurrentHashmap的putVal源码会发现在putVal内部使用了Synchronized关键词保证了线程安全 但是看get源码的时候发现根本没有用synchronized关键字,那么get方法是如何保证线程安全的呢? 源码如下 public V get(Object key) { Nod...原创 2019-12-06 15:55:26 · 1304 阅读 · 0 评论 -
CountDownLatch&CyclicBarrier&Semaphore
CountDownLatch&CyclicBarrier&Semaphore CountDownLatch和CyclicBarrier都能够实现线程之间的等待,但侧重点略微不同 CountDownLatch一般用于某个线程等待若干个其他线程执行完任务之后它才执行 CyclicBarrier一般用于一组线程相互等待至某个状态,然后这一组线程再同时执行 而且CountDownLat...原创 2019-12-06 14:00:18 · 214 阅读 · 0 评论