Java中使用ThreadGroup来表示线程组,它可以对一批线程进行分类管理,Java允许程序直接对线程组进行控制。

默认的情况下,所有的线程都属于主线程组。

public final ThreadGroup getThreadGroup()

我们也可以给线程设置分组

Thread(ThreadGroup group,Runnable target,String name)

public class IntegerDemo {
public static void main(String[] args) { MyRunnable my = new MyRunnable(); Thread t1 = new Thread(my, "hello");
Thread t2 = new Thread(my, "world"); ThreadGroup tg1 = t1.getThreadGroup();
ThreadGroup tg2 = t2.getThreadGroup(); System.out.println(tg1.getName());// main
System.out.println(tg2.getName());// main System.out.println(Thread.currentThread().getThreadGroup().getName());// main
}
} class MyRunnable implements Runnable { @Override
public void run() {
// TODO Auto-generated method stub for (int i = 0; i < 100; i++) {
System.out.println(Thread.currentThread().getName() + ":" + i);
}
}
}

void setDaemon(boolean daemon);// 更改此线程组的后台程序状态。

public class IntegerDemo {
public static void main(String[] args) {
method();
} private static void method() {
ThreadGroup tg = new ThreadGroup("新的线程组"); MyRunnable my = new MyRunnable(); Thread t1 = new Thread(tg, my, "hello");
Thread t2 = new Thread(tg, my, "world"); tg.setDaemon(true);// 更改此线程组的后台程序状态。 ThreadGroup tg1 = t1.getThreadGroup();
ThreadGroup tg2 = t2.getThreadGroup(); System.out.println(tg1.getName());// 新的线程组
System.out.println(tg2.getName());// 新的线程组 System.out.println(Thread.currentThread().getThreadGroup().getName());// main
}
} class MyRunnable implements Runnable { @Override
public void run() {
// TODO Auto-generated method stub for (int i = 0; i < 100; i++) {
System.out.println(Thread.currentThread().getName() + ":" + i);
}
}
}

最新文章

  1. 【Win 10应用开发】认识一下UAP项目
  2. MyEclipse之无法连接到MySQL数据库
  3. Android jni系统变量、函数、接口定义汇总
  4. RequireJS实例分析
  5. 分布式架构高可用架构篇_02_activemq高可用集群(zookeeper+leveldb)安装、配置、高可用测试
  6. iOS 网络处理注意点
  7. WINDOWS批处理命令使用大全
  8. 那些常用的eclipse快捷键
  9. 面试(1)-java-se-字符串
  10. 在XUnit中用Moq怎样模拟EntityFramework Core下的DbSet
  11. chromedriver与chrome版本映射表(最新)
  12. java内部类:成员内部类,静态内部类方法内部类,匿名内部类(A)
  13. UPUPW配置
  14. php----------const 定义的常量和define()定义的常量的区别?
  15. mini dc与简易计算器 20165235
  16. Win10,Office2013出现“您的组织策略阻止我们为您完成此操作”怎么解决?
  17. 单片机编译器Keil提供的sprintf有点问题
  18. Windows Server 2003出现Directory Listing Denied This Virtual Directory does not allow contents to be listed.的解决方案
  19. Unbuntu18.04通过apt源方式安装mysql5.7.22
  20. virtualBox虚拟机联网

热门文章

  1. 深入理解hadoop值MapReduce(2)
  2. javascript中跨域问题的解决方法汇总
  3. intellij idea 的快捷键方法
  4. input 限制 中文输入
  5. losetup - 设 定 与 控 制 环回设备
  6. Zabbix--02 自定义监控主机
  7. Codeforces Round #430 (Div. 2) - A
  8. Flask 框架app = Flask(__name__) 解析
  9. 一个错误导致懂了mac系统的PATH环境变量
  10. React Native 之createDrawerNavigator和createSwitchNavigator