Java 并发之无锁
并发安全需要保证几个基本特性:
- 可见性 - 是一个线程修改了某个共享变量,其状态能够立即被其他线程知晓,通常被解释为将线程本地状态反映到主内存上,
volatile
就是负责保证可见性的。 - 有序性 - 是保证线程内串行语义,避免指令重排等。
- 原子性 - 简单说就是相关操作不会中途被其他线程干扰,一般通过互斥机制(加锁:
sychronized
、Lock
)实现。
...大约 29 分钟
并发安全需要保证几个基本特性:
volatile
就是负责保证可见性的。sychronized
、Lock
)实现。