《并发编程》--7.声明线程组

来源:互联网 发布:网络dns错误是什么原因 编辑:程序博客网 时间:2024/06/13 22:38

如果在一个系统中,线程数量特别多,而且功能分配比较明确,那就可以将相同功能的线程放在一个线程组里。线程组里的线程同时启动,同时停止。

线程组的使用很简单,如下一个简单的demo

public class threadGroup implements Runnable{public static void main(String[] args) {ThreadGroup tg = new ThreadGroup("threadGroup");//声明线程组Thread t1 = new Thread(tg, new threadGroup(), "T1");Thread t2 = new Thread(tg, new threadGroup(), "T2");//声明线程,指定所属的线程组t1.start();t2.start();System.out.println("线程总数为:"+tg.activeCount());tg.list();}@Overridepublic void run(){String groupName = Thread.currentThread().getThreadGroup().getName()+"-"+Thread.currentThread().getName();while(true){System.out.println("I am "+ groupName);try {Thread.sleep(3000);} catch (InterruptedException e) {e.printStackTrace();}}}}

注意:线程组也有stop()方法,他会停止线程组中所有的线程。但是他和thread.stop()相同的问题,因为使用起来需要格外的谨慎!

原创粉丝点击