目录
传统synchronized
未用同步方法时
使用同步方法时
Lock接口
:::info
ReentrantLock 可重入锁(常用)
ReentrantReadWriteLock.ReadLock 读锁
ReentrantReadWriteLock.WriteLock 写锁
:::
:::info
lock() 加锁
unlock() 解锁
:::
:::info
NonfairSync 非公平锁:十分不公平,可以插队
FairSync 公平锁:十分公平,先来先执行(默认)
:::
应用测试
Synchronized和Lock的区别
Synchronized版-生产者和消费者问题
Lock版-生产者和消费者问题
Condition 精准的通知和唤醒线程
:::info
condition.await(); // 等待
condition.signal(); // 唤醒指定线程
:::