![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
并发编程
文章平均质量分 60
无名居
这个作者很懒,什么都没留下…
展开
-
java并发编程--线程封闭
java并发编程–线程封闭线程封闭有三种方式:Ad-hoc线程封闭、栈封闭、ThreadLocal类;其中Ad-hoc线程封闭一般由程序员自己实现,很少用,暂不介绍。加粗 Ctrl + B 插入代码 Ctrl + K栈封闭 将对象封闭在局部变量中,只有局部变量才能访问,保证线程安全。 下面我们来看一段简单的代码public class Ani...原创 2018-04-08 16:41:53 · 298 阅读 · 0 评论 -
原子操作原理
处理器实现原子操作使用总线锁保证原子性我们知道处理器存在内存与缓存,当线程读取数据时,先会去取缓存中的数据,若没有再去内存中拿取数据,这样就会发生缓存中与内存中的数据不一致,从而导致不正确的结果。为了得到正确的结果,可以在总线上加锁,也就是在内存与缓存上都加锁,也就是给处理器一个#LOCK信号,这样线程就可以独占锁使用缓存锁保证原子性锁的粒度减少Java实现原子操作使用...原创 2018-12-27 22:43:38 · 283 阅读 · 0 评论 -
Java并发工具-CountDownLatch、CyclicBarrier、Semaphore
CountDownLatch等待线程完成CountDownLatch是一个等待所有线程完成的工具,类似join()方法,初始化的时候会调用构造器传递线程个数,调用countDown方法将count值减一,调用await方法会等待知道count=0才会通过。写一个简单的例子方便理解import java.util.concurrent.CountDownLatch;/** * countD...原创 2019-01-25 10:22:45 · 232 阅读 · 0 评论 -
java concurrent包下的锁
concurrent包下锁的种类接口:Lock、ReadWriteLock、Condition实现类:ReentrantLock、ReentrantReadWriteLock、StampedLock抽象类:AbstractQueuedSychronizer简单梳理下锁的关系ReentrantLock实现了Lock接口,并内部实现了AQS同步器;ReentrantReadWriteLoc...原创 2019-01-20 18:36:11 · 509 阅读 · 0 评论