有一个specification of Java memory model。
我想深入到源代码中,实际调查这些机制是如何实现的。(例如,同步、易失性、...等)
但是代码库太大了,我不知道从哪里开始。
(http://www.java2s.com/Open-Source/Java-Document/CatalogJava-Document.htm)
有人能给我一些线索吗?非常感谢!
发布于 2011-01-16 23:56:39
您可以从查看当前版本的JDK中的synchronizer.cpp类开始。为自己准备一壶浓烈的咖啡--您已经选择了JVM中最复杂的区域之一来开始钻研源代码。
如果你还没有这样做,我也建议你看看Bill Pugh's page on the Java Memory Model和Doug Lea的recommendations for compiler writers on implementing the Java memory model。
您还可以在打开该选项的情况下运行debug JVM以输出JIT编译的程序集,然后可以对其进行检查。(这不会告诉您所有的事情,但它可能会给您一些提示:我认为它打印的一些东西会让您在JDK源代码中搜索一些东西……)
https://stackoverflow.com/questions/4705899
复制相似问题