Chciałbym sprawdzić, czy moje rozumowanie jest prawidłowe.wątek java stan
Przede wszystkim powinienem podać kilka szczegółów na temat problemu próbuję rozwiązać. Wątek (część programu) wykonuje następujące rzeczy:
- to rozpoczyna się
- wywołuje Thread.Sleep (20ms)
- wywołuje Getin metoda()
- próbuje uzyskać blokadę (lock.lock())
- jeśli pomyślnie dostaje blokadę wywołuje Thread.Sleep (100ms)
- jeśli blokada nie jest dostępny wywołuje waitingCond.await()
- po wywołaniu Thread.Sleep (100ms) to wzywa lock.unlock()
- wywołuje metodę inną getout()
- to kończy (thread.join())
Biorąc pod uwagę, że po to mój zgadywać o stanie Temat:
READY TO RUN
stanTIMED WAITING
stanWAITING
stanWAITING
stanBLOCKED
stanWAITING
stanWAITING
stanTERMINATED
państwowe
Dzięki
Czy jest jakiś moment, w którym faktycznie znajduje się w stanie działania? :) –
@LukasKnuth Zakłóciłeś numerację OP, gdzie 5.1 był opcjonalnym krokiem podrzędnym. Myślisz, że tak jest lepiej? –
To dość nudne dla wątku ... I: Nie dałeś nam pytania. – brimborium