并发编程
文章平均质量分 66
qq_15801963
这个作者很懒,什么都没留下…
展开
-
LockSupport,synchronized,Lock线程交互的比较
总结4点 :1.synchronized线程交互使用wait()和notify()方法实现,需要这两个方法在同步代码块中(否则报错IllegalMonitorStateException),并且要先wait()再被notify(),否则通知不到;2.Lock线程交互使用Condition对象的await()和signal()方法实现,同样需要这两个方法在同步代码块中(否则报错IllegalMonitorStateException),一样需要先await()再被signal(),否则通知不到;3.原创 2021-07-20 23:32:46 · 589 阅读 · 1 评论 -
自己实现自旋锁与非自旋锁(从代码分析两者区别)
1.自旋锁实现与测试:package juc.lock;import java.util.Date;import java.util.concurrent.TimeUnit;import java.util.concurrent.atomic.AtomicReference;class SpinLock { //设置一个原子引用,引用的初始值时null, // 当引用值为null时代表没有线程获取锁 // 当引用值为某个线程时,代表锁被该线程占有 priva原创 2021-07-20 14:10:08 · 221 阅读 · 0 评论