JUC包
2021-02-22 本文已影响0人
叫我C30混凝土
JUC包原因
- synchronized性能不高;(JDK1.6及以前版本)
- wait/notify太原始,难用;例: 实现复杂协同中会引入一堆的锁和notify; 但是JUC包中可以使用CyclicBarrier,CountDownLatch;
- 不够灵活;
例1:synchronized只能出现在同一个类中,修饰代码块或方法,如果需要实现复杂需求,如:在一个类中加锁,另一个类中解锁,synchronized就无法做到;
例2:实现优先级;
JUC包改进
- 提升性能;例:基础数据Atimic---类中使用了CAS原子操作;
- 提供了多种场景下更方便的实现; 例:ReentrantLock,ReadWriteLock,StampedLock;
- 易用;