02 | 可见性、原子性和有序性:并发编程的BUG
CPU、内存、IO设备
原子性:一个或多个操作在CPU执行的过程中不被中断的特性(不可分割的整体,像原子一样),CPU仅能保证原子操作是CPU指令级别,而不是高级语言的操作符,因此往往需要在高级语言层面保证操作的原子性
有序性:编译优化带来的有序性问题
爱生活、爱编程
原子性:一个或多个操作在CPU执行的过程中不被中断的特性(不可分割的整体,像原子一样),CPU仅能保证原子操作是CPU指令级别,而不是高级语言的操作符,因此往往需要在高级语言层面保证操作的原子性
有序性:编译优化带来的有序性问题