W JDK, to realizowane jako:Jaki jest cel snu (long millis, int nanos)?
public static void sleep(long millis, int nanos)
throws InterruptedException {
if (millis < 0) {
throw new IllegalArgumentException("timeout value is negative");
}
if (nanos < 0 || nanos > 999999) {
throw new IllegalArgumentException(
"nanosecond timeout value out of range");
}
if (nanos >= 500000 || (nanos != 0 && millis == 0)) {
millis++;
}
sleep(millis);
}
co oznacza nanos
argumentu nic nie robi w ogóle.
Czy pomysł na to, że na sprzęcie o dokładniejszym czasie, JVM może zapewnić lepszą implementację?
cóż, robi to * coś *, to podskakuje co najmniej pół milisekundy lub jeśli ms wynosi zero. –
cóż, tak nie * nic * ... ale to nic nie warte. –
Kod źródłowy pochodzi z Open JDK? – Marcelo