[英]Where can I find the source code for `native` methods in Java library?
在sun.misc
包中,我在Unsafe
类下看到了这些方法。
public final native boolean compareAndSwapObject(Object var1, long var2, Object var4, Object var5);
public final native boolean compareAndSwapInt(Object var1, long var2, int var4, int var5);
public final native boolean compareAndSwapLong(Object var1, long var2, long var4, long var6);
似乎这些方法都是原子的并且是用C语言编写的,但我在Github上找不到这些方法的源代码。有没有人对此有任何想法? 如何轻松找到这些方法的开源实现?
你可以在这里查看OpenJDK代码: http : //hg.openjdk.java.net/jdk8/jdk8/hotspot/file/tip/src/share/vm/prims/unsafe.cpp
您可以下载OpenJdk源代码JDK7 。 有一个文件夹共享(jdk \\ src \\ share),您可以在其中获取源代码。 文件夹native(jdk \\ src \\ share \\ native)有源代码(用c和c ++编写):
谢谢哥们儿
最后,我在github镜像中找到了jdk7-hotspot的源代码:
https://github.com/openjdk-mirror/jdk7u-hotspot/blob/master/src/share/vm/prims/unsafe.cpp
你的问题特别要求java 8
。 从命令行运行(您需要安装Mercurial
客户端)
hg clone http://hg.openjdk.java.net/jdk8/jdk8
这将为您提供HotSpot
和其他所有内容的源代码。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.