M S*_*ach 8 java concurrency multithreading volatile
我听过很多人说多变量处理器中的volatile关键字比单核处理器更有意义,但不知道原因.我试图谷歌但在这方面没有帮助.有什么理由吗?
根据我的理解,无论是多核还是单处理器,volatile关键字应该具有同等重要性.原因是volatile,它保证值将在主内存(堆)中更新,而不是保留在线程本地内存(堆栈)中,这可以被所有线程看到.那么无论是多核还是单处理器,它如何产生差异?
"易变性"与核心数量无关.JVM隐藏了底层架构.更不用说volatile是一个语言关键字,因此它应该在每个架构上都表现相同.
你描述了volatile的作用,它是正确的.应用程序的体系结构可能需要使用volatile,没有别的.
如果您有兴趣,这里有一篇关于volatile的好文章,以及Java中使用的内存模型的基本概念.
http://jeremymanson.blogspot.hu/2008/11/what-volatile-means-in-java.html
| 归档时间: |
|
| 查看次数: |
3287 次 |
| 最近记录: |