Ich benutze system.nanoTime in meiner App und ich berechne Zeit relativ zu einer Startzeit.
Meine App lief sehr gut, bis ich sie auf einen neuen Computer kopiert habe und die Nanozeit gibt mir langsamere Werte.java - system.nanoTime() läuft zu langsam
Ich schrieb eine einfache App nur um sicher zu gehen.
wird die Nanozeit mit der Systemzeit verglichen.
Es zeigt die gleichen Werte in anderen Computern außer meinem neuen. irgendwelche Vorschläge?
Hier ist mein Code: Zuerst habe ich einen Thread
private long initNanoTime = System.nanoTime();
private long initTime = System.currentTimeMillis();
als ich Schleife, die jede Sekunde läuft:
long timeUsingNanoTime = initTime + (System.nanoTime() - initNanoTime)/1000000;
long timeUsingMilis = System.currentTimeMillis();
long nanotimeOffset = Math.abs(timeUsingNanoTime - timeUsingMilis);
if (nanotimeOffset < 100l) ? print("close") : print(far);
Edit: Ich nano verwende, weil ich selbst ts behandeln müssen die in Nano-Zeit auftreten und zu einem Protokoll die Nano-Zeit, die es in
empfangen wurde
Was meinst du mit "gibt mir langsamere Werte". Wird die Ausführung der Methode länger dauern oder erhalten Sie einen Wert, den Sie nicht erwarten? Vielleicht könnte dies Ihnen helfen http://stackoverflow.com/questions/351565/system-currenttimemillis-vs-system-nanotime – SWoeste