2010-03-05 13 views
15

Czy fałszywe pobudki wpływają na połączenia z Thread.sleep (x)? Oczywiście, czasomierz nie jest w 100% dokładny (co prowadzi do drobnych niedokładności w czasie wznawiania), ale czy ma wpływ na fałszywy alarm?Czy fałszywe pobudki wpływają na Thread.sleep?

+0

Co masz na myśli mówiąc "dotyczy"? Pytasz, czy może spowodować, że nie zostaną wykonane we właściwym czasie? czy nie obudzić się? A może pytasz, czy mogą się przypadkowo obudzić? – Kylar

+0

Pytam, czy można ich obudzić przypadkowo, zanim zostaną one obudzone ("powinno być" definiowane jako czas dłuższy niż naturalna nieścisłość bazowego timera). – jsight

Odpowiedz

9

Pytasz, czy problem dotyczy numeru Thread.sleep() z tego samego numeru spurious wakeup, który został udokumentowany jako wpływający na Object.wait(long), prawda? Odpowiedź brzmi: nie ma udokumentowanej fałszywej pobudki powiązanej z Thread.sleep(). Masz rację, że nie ma żadnych twardych gwarancji co do tego, jak długo będziesz spać, kiedy zażądasz N milisekund. Oczywiście, przerwanie wątku kończy się na Thread.sleep().

+6

Więc masz na myśli odpowiedź: "Nie, nie musimy się bronić przed fałszywym przebudzeniem" lub "Tak, musimy chronić się przed fałszywym przebudzeniem"? – Pacerier

4

Rzeczywisty interwał snu jest zawsze> = wymagany interwał. jest szczególnie wrażliwy w małych odstępach czasu.

teraz o "fałszywych przebudzeniach". nie wspomniano o Thread.sleep

Powiązane problemy