- 原子性 :
一个的操作或者多次操作,要么所有的操作全部都得到执行并且不会收到任何因素的干扰而中断,要么所有的操作都执行,要么都不执行。synchronize可以保证代码片段的原子性。 - 可见性 :当一个变量对共享变量进行了修改,那么另外的线程都是立即可以看到修改后的最新值。volatile 关键字可以保证共享变量的可见性。
- 有序性 :代码在执行的过程中的先后顺序,Java 在编译器以及运行期间的优化,代码的执行顺序未必就是编写代码时候的顺序。volatile
关键字可以禁止指令进行重排序优化。
并发编程的三个重要特性
最新推荐文章于 2024-03-18 21:15:00 发布
本文深入探讨了并发编程中的三个关键概念:原子性、可见性和有序性。原子性确保操作不可中断,synchronized关键字能提供此保障;可见性保证了线程对共享变量的修改能被其他线程即时看到,volatile关键字在此起到关键作用;有序性涉及代码执行的顺序,volatile还能防止指令重排序。理解并应用这些概念对于优化多线程程序至关重要。
摘要由CSDN通过智能技术生成