Ich versuche, Zeit in JNI-Aufruf zu messen, es von nativem Java aufrufen.Messzeit in Java JNI (nativer Aufruf Java)
In C-Code, ich "GetTickCount" API anwenden, um JNI Ausführungszeit und "System.nano" in Java zu erhalten.
Beispiel:
long start = GetTickCount();
....//CallStaticMethod exampleMethod...
long end = GetTickCount();
long duration = end - start;
Und in Java
public static exampleMethod(){
long start = System.nano();
//do something
long end = System.nano();
long duration = TimeUnit.NANOSECONDS.toMilis(end - start);
}
Manchmal ist es inkonsequent, weil die Dauer des Java mehr als C die Dauer ist. (ungefähr 5 bis 10 Millisekunden)
'GetTickCount' zurück ** Milli ** Sekunden' System.nanoTime() 'Erträge ** Nano ** Sekunden. – apangin
Entschuldigung für Unannehmlichkeiten. Es bezieht sich nicht auf die Zeiteinheit. Ich vermisse den letzten Zeilencode während ich hier posten. Eigentlich konvertiere ich Nano in Millisekunden in meinem Quellcode :). Die Dauer von Java ist mehr als die Dauer von C als die gleiche Einheit (Millisekunden) – LGProgramer