
传统的集合框架(Collection实现的框架)的操作, 要么正常返回, 要么抛出异常 BlockingQueue/BlockingDeque提...
CountDownLatch 倒数闭锁 用于协调一组线程的工作 简单、明了、粗暴的APIcountDown()await() 用CountDow...
java1.5以前synchronized <---> 同步wait / notify <---> 协同 1.5引入lock ...
JUC包原因 synchronized性能不高;(JDK1.6及以前版本) wait/notify太原始,难用;例: 实现复杂协同中会引入一堆的...
java原生的线程协同机制 blocked: 需要获得锁,从runnable->blocked;获得锁blocked->runnable; wa...
synchronized java语言级的支持,1.6之后性能极大提高 字节码层面的实现: monitorenter/monitorexit 锁...
多线程的问题 正确性安全:竞争条件/死锁 效率与易用性执行地越快越好用起来越不容易出错越好 CAS(compare and swap) 预期值1...
Java内存模型文档https://download.oracle.com/otndocs/jcp/memory_model-1.0-pfd-s...
什么是线程安全?当一个类在多线程环境下被使用时,仍能表现出正确的行为; 线程安全问题 竞争条件 原子性 看上去无害的程序在多线程环境下可能暗藏杀...