Група нишки - 1

„Здрасти, Амиго!“

„Ще започнем по-задълбочено изследване на нишките.“

„Концепцията за група нишки беше въведена, за да се предотврати многократно спиране и прекъсване на нишка от всяка друга нишка. Една нишка може да засегне само други нишки в същата група нишки. ThreadGroup е клас за управление на групи нишки. Този подход ви позволява да защитите нишки от нежелани промени."

"Понякога трябва да стартирате code, на който не можете да се доверите напълно. Така че е удобно да поставите всички негови нишки в отделна група и да ги блокирате да не се намесват в работата на основната група нишки."

"Група нишки може да съдържа други групи. Това ви позволява да организирате всичките си нишки и групи в йерархично дърво. В такова дърво всяка група нишки (с изключение на първоначалната група) има свой собствен родител."

„Класът ThreadGroup има методи, които ви позволяват да получите списъци с всички нишки и да ги повлияете/промените. Когато създадем нова нишка, без изрично да посочим група, тя се присъединява към същата група като нишката на създателя.“

„Ето някои от методите в класа ThreadGroup:“

Метод Описание
String getName()
Връща името на групата
ThreadGroup getParent()
Връща родителската група
void interrupt()
Прекъсва всички нишки в групата.
boolean isDaemon()
Проверява дали групата е демон
void setDaemon(boolean daemon)
Задава свойството демон на групата
int activeCount()
Връща броя на живите нишки в групата и нейните подгрупи
int activeGroupCount()
Връща броя на живите групи в групата и нейните подгрупи
int enumerate(Thread[] list)
Поставя всички живи нишки в масива и връща броя им.
int getMaxPriority()
Връща максималния приоритет за нишките в групата.
void setMaxPriority(int priority)
Позволява ви да зададете максималния приоритет на нишките в групата и подгрупите.