- Implementacja klasy dziedziczącej po Thread.
- Implementacja klasy implementującej interface Runnable, stworzenie klasy Thread podając wcześniej zaimplementowaną klasę w konstruktorze.
Raz zakończonego wątku nie można jeszcze raz uruchomić, trzeba go stworzyć na nowo i znowu start(). Ponownie wywołanie start() lub run() spowoduje wywołanie zwyczajnej metody. Wątek można przerwać metodą interrupt().
Nadanie priorytetu nie daje pewności co do natychmiastowego zastosowania zmian. Priorytet wątku mówi o statystycznym ogólnym zasotsowaniu. Wątek dziedziczy swój priorytet po jego rodzicu (wątku).
Daeon Threads - setDaemon(boolean) (standardowy false).
Yielding - zaprzestanie wykonywania i umieszczenie wątku w kolejce Ready. Jeśli jest tylko jeden wątek oczekujący, to yield() nic nie daje. yield() nie powoduje także zaprzestania wątku ze względu na wątki o niższym priorytecie.
wait(), notify() i notifiAll() mogą być wywołane tylko z metody synchronized.
Gdy wywołuje się metodę synchronized - klasa musi dostać lock na dany obiekt (lub całą klasę jeśli metoda jest static).
Brak komentarzy:
Prześlij komentarz