1. volatile重要工作是避免线程脏读:当线程对volatile变量进行读操作时,会先将自己工作内存中的变量置为无效,之后再通过主内存拷贝新值到工作内存中使用。
2.volatile解决的是变量在多个线程之间的可见性,但不能完全保证数据的原子性。
3.现在JVM经过优化,已不会出现liveness failure 。所以没事别用volatile。
Java的volatile关键字解析
最新推荐文章于 2024-09-13 21:40:38 发布
1. volatile重要工作是避免线程脏读:当线程对volatile变量进行读操作时,会先将自己工作内存中的变量置为无效,之后再通过主内存拷贝新值到工作内存中使用。
2.volatile解决的是变量在多个线程之间的可见性,但不能完全保证数据的原子性。
3.现在JVM经过优化,已不会出现liveness failure 。所以没事别用volatile。