原子性:
一个操作中国cpu不会再在中途进行其他调度工作,会保证操作的完整性(eg:cpu调度了一个线程,自增值后会完成 主存赋值)
可见性:
多个线程访问同一个变量时,一个线程修改了变量值,其他线程能够立刻看到被修改后的值
有序性:
因为虚拟机内部代码编译时,为追求运行效率,会进行指令重排序,这种情况,在单线程中是安全的,在多线程中就不是安全的。所以要保证代码的执行有序性。
本文深入探讨并发编程中的三大核心概念:原子性,确保操作不被打断;可见性,保证线程间变量更新的即时同步;以及有序性,防止指令重排序带来的多线程安全性问题。理解并掌握这些概念对于编写高效、可靠的多线程代码至关重要。
一个操作中国cpu不会再在中途进行其他调度工作,会保证操作的完整性(eg:cpu调度了一个线程,自增值后会完成 主存赋值)
多个线程访问同一个变量时,一个线程修改了变量值,其他线程能够立刻看到被修改后的值
因为虚拟机内部代码编译时,为追求运行效率,会进行指令重排序,这种情况,在单线程中是安全的,在多线程中就不是安全的。所以要保证代码的执行有序性。
504
1万+
2981
340

被折叠的 条评论
为什么被折叠?