多线程

2/6/2023 多线程

# 1. 多线程引起的安全问题

a. 原子性
b. 可见性
c. 有序性

# 2. Synchronize

范围:1.实例锁 2 类锁(静态方法、类对象) 3 代码块
存储:对象头

# 3. 锁升级

偏向锁 -> 轻量级锁 -> 重量级锁

# 4. 线程通讯

wait/notify
生产者/消费者模型

# 5 volatile

解决可见性,因工作线程与主内存之间存在三级缓存,导致线程间数据不可见
更新时间: 2/16/2023, 5:28:01 PM