开发者

Implementation of Java's memory model?

There is a specification of Java memory model.

And I want to dive into the source code 开发者_JS百科to actually investigate how those mechanisms are implemented. (e.g., synchronized, volatile, ..., etc.)

But the codebase is so huge, I have no idea where to start with.

(http://www.java2s.com/Open-Source/Java-Document/CatalogJava-Document.htm)

Could anyone give me some clues? Thanks a lot!


You might start by looking at the synchronizer.cpp class in the current version of the JDK. Prepare yourself a strong pot of coffee-- you've picked one of the most complex areas of the JVM to start delving into the source code.

If you haven't already done so, I would also suggest that you take a look at Bill Pugh's page on the Java Memory Model and Doug Lea's recommendations for compiler writers on implementing the Java memory model.

You may also glean something from running the debug JVM with the option turned on to output the JIT-compiled assembly which you can then inspect. (This won't tell you everything, but it might give you some pointers in: I think some of the things it prints will if nothing else give you some things to search for in the JDK source code...)

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜