ThreadGroup - 1

"Bună, Amigo!"

„Vom începe o explorare mai aprofundată a firelor”.

„Conceptul de grup de fire de execuție a fost introdus pentru a preveni oprirea și întreruperea repetă a unui fir de execuție a tuturor firelor de execuție. Un fir de execuție poate afecta numai alte fire din același grup de fire. ThreadGroup este o clasă pentru gestionarea grupurilor de fire. Această abordare vă permite să protejați firele de execuție. de la schimbări nedorite.”

„Uneori trebuie să rulați cod în care nu puteți avea încredere totală. Așa că este convenabil să puneți toate firele sale într-un grup separat și să le blocați să interfereze cu activitatea grupului principal de fire.”

„Un grup de fire poate conține alte grupuri. Acest lucru vă permite să vă organizați toate firele și grupurile într-un arbore ierarhic. Într-un astfel de arbore, fiecare grup de fire (cu excepția grupului inițial) are propriul părinte.”

„Clasa ThreadGroup are metode care vă permit să obțineți liste cu toate firele de execuție și să le afectați/modificați. Când creăm un fir nou fără a specifica în mod explicit un grup, acesta se alătură aceluiași grup ca și firul de execuție.”

„Iată câteva dintre metodele din clasa ThreadGroup:”

Metodă Descriere
String getName()
Returnează numele grupului
ThreadGroup getParent()
Returnează grupul părinte
void interrupt()
Întrerupe toate firele din grup.
boolean isDaemon()
Verifică dacă grupul este un demon
void setDaemon(boolean daemon)
Setează proprietatea demonului grupului
int activeCount()
Returnează numărul de fire live din grup și subgrupurile acestuia
int activeGroupCount()
Returnează numărul de grupuri live din grup și subgrupurile acestuia
int enumerate(Thread[] list)
Pune toate firele de execuție în matrice și returnează numărul acestora.
int getMaxPriority()
Returnează prioritatea maximă pentru firele din grup.
void setMaxPriority(int priority)
Vă permite să setați prioritatea maximă a firelor de execuție în grup și subgrupuri.