2015-05-15 6 views
7

Im Paket sun.misc sah ich diese Methoden unter Unsafe Klasse.Wo finde ich den Quellcode für `native` Methoden in der Java-Bibliothek?

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); 

Es scheint, dass diese Methoden atomar sind und sind in C geschrieben, aber ich kann den Quellcode für diese Methode auf Github nicht finden .. Enthält diese Ideen über jemand? Wie finde ich leicht eine Open-Source-Implementierung für diese Methoden?

Antwort

0

Sie können OpenJDK Quellcode JDK7 herunterladen. Es gibt eine Ordnerfreigabe (jdk \ src \ share), wo Sie Quellcode erhalten können. Der Ordner nativen (jdk \ src \ share \ nativ) hat Quelle geschrieben (in C und C++):

  1. jdk \ src \ Linux Quelle für Linux.
  2. jdk \ src \ Windows-Quelle für Windows.
  3. jdk \ src \ solaris souce für solaris.
  4. jd \ src \ gemeinsame Quelle teilen.
0

Ihre Frage geht dahin, die speziell für java 8. Führen Sie diese von der Kommandozeile (Sie müssen Mercurial Client installiert)

hg clone http://hg.openjdk.java.net/jdk8/jdk8 

Diese erhalten Sie Quellcode für HotSpot und alles andere.