锁
啦啦啦咯咯咯
一个默默学习的小程序员
展开
-
公平锁和,公平锁,可重入锁(递归锁),自旋锁,读写锁
自旋锁手写自旋锁运行结果:独占锁,共享锁ReentrantReadWriteLock读写锁。例子(未加读写锁):结果,写操作应该为独占,不许被分割。解决:加上ReentrantReadWriteLock写操作加上一个写锁读操作加上一个读锁:结果:...原创 2021-01-05 16:27:48 · 271 阅读 · 0 评论 -
Synchronized和Lock的区别?
一 原始构成二 使用方法三 等待是否可中断四 加锁是否公平五 锁绑定多个条件condition代码:精确通知:public class ShareResource { private int number = 1; //a:1 b:2 c:3 private Lock lock = new ReentrantLock(); private Condition condition1 = lock.newCondition(); private C原创 2020-12-30 10:34:18 · 232 阅读 · 1 评论 -
多线程生产者消费者模式
前提知识synchronized 使用wait等待线程,notify唤醒线程lock使用Condition condition = lock.newCondition();condition中的await等待线程,signal唤醒线程。上代码:public class ShareDate { private int number = 0; private Lock lock = new ReentrantLock(); private Condition conditi原创 2020-12-30 09:39:27 · 74 阅读 · 0 评论