Hohi!
Also wenn man ein Thread.sleep(10000) zB macht und während dem Sleep die Zeit zurückdreht, so wartet er nicht diese 10 Sekunden sondern bis die Zeit wirklich bei den 10 Sekunden vorbe ist...
Bsp.:
Ausgabe:
Habe die Uhr einfach eine Minute zurückgedreht...
Wenn man die Uhr nach vorne stellt, spinnt das ganze noch mehr. Auf C Basis (also ein 1:1 gleiches programm in C) funktioniert aber wirklich wie es soll. Egal ob ich die Zeit verstelle!!
Weiß jemand wie man das Problem umgehen kann?! (Tritt laut meinen Entwicklern auch unter Linux auf)
Also wenn man ein Thread.sleep(10000) zB macht und während dem Sleep die Zeit zurückdreht, so wartet er nicht diese 10 Sekunden sondern bis die Zeit wirklich bei den 10 Sekunden vorbe ist...
Bsp.:
Code:
long timeStamp = System.currentTimeMillis();
System.out.println("JETZT: " + new Date().toLocaleString());
Thread.currentThread().sleep(10000);
System.out.println("NACHHER: " + new Date().toLocaleString());
System.out.println("DIFF: " + (System.currentTimeMillis() - timeStamp));
Ausgabe:
JETZT: 16.07.2008 09:24:14
NACHHER: 16.07.2008 09:23:22
DIFF: -51379
Habe die Uhr einfach eine Minute zurückgedreht...
Wenn man die Uhr nach vorne stellt, spinnt das ganze noch mehr. Auf C Basis (also ein 1:1 gleiches programm in C) funktioniert aber wirklich wie es soll. Egal ob ich die Zeit verstelle!!
Weiß jemand wie man das Problem umgehen kann?! (Tritt laut meinen Entwicklern auch unter Linux auf)