กลุ่มเธรด - 1

“สวัสดี อามีโก้!”

"เราจะเริ่มสำรวจเธรดอย่างละเอียดมากขึ้น"

"แนวคิดของกลุ่มเธรดถูกนำมาใช้เพื่อป้องกันไม่ให้เธรดหยุดทำงานซ้ำๆ และขัดจังหวะทุกๆ เธรดอื่นๆ เธรดสามารถส่งผลกระทบต่อเธรดอื่นๆ ในกลุ่มเธรดเดียวกันเท่านั้น ThreadGroup เป็นคลาสสำหรับจัดการกลุ่มเธรด วิธีการนี้ช่วยให้คุณปกป้องเธรด จากการเปลี่ยนแปลงที่ไม่ต้องการ”

"บางครั้งคุณต้องรันโค้ดที่คุณไม่สามารถไว้วางใจได้อย่างเต็มที่ ดังนั้นจึงสะดวกที่จะใส่เธรดทั้งหมดในกลุ่มแยกต่างหาก และบล็อกไม่ให้รบกวนการทำงานของกลุ่มเธรดหลัก"

"กลุ่มเธรดสามารถมีกลุ่มอื่นได้ ซึ่งช่วยให้คุณจัดระเบียบเธรดและกลุ่มทั้งหมดของคุณในแผนผังลำดับชั้น ในแผนผังดังกล่าว แต่ละกลุ่มเธรด (ยกเว้นกลุ่มเริ่มต้น) จะมีพาเรนต์ของตัวเอง"

"คลาส 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)
ให้คุณตั้งค่าลำดับความสำคัญสูงสุดของเธรดในกลุ่มและกลุ่มย่อย