服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - Java教程 - 浅谈一下Java线程组ThreadGroup

浅谈一下Java线程组ThreadGroup

2023-05-10 01:05未知服务器之家 Java教程

目录 1 简介 2 线程组树的结构 3 线程组的构造 4 API 5 终止线程组中的所有线程 1 简介 一个线程集合。是为了更方便地管理线程。父子结构的,一个线程组可以集成其他线程组,同时也可以拥有其他子线程组。 从结构上看,线程组

目录
  • 1 简介
  • 2 线程组树的结构
  • 3 线程组的构造
  • 4 API
  • 5 终止线程组中的所有线程

1 简介

一个线程集合。是为了更方便地管理线程。父子结构的,一个线程组可以集成其他线程组,同时也可以拥有其他子线程组。

从结构上看,线程组是一个树形结构,每个线程都隶属于一个线程组,线程组又有父线程组,根线程组——System线程组。

2 线程组树的结构

  • JVM创建的system线程组是用来处理JVM的系统任务的线程组,例如对象的销毁等
  • system线程组的直接子线程组是main线程组,这个线程组至少包含一个main线程,用于执行main方法
  • main线程组的子线程组就是应用程序创建的线程组。

浅谈一下Java线程组ThreadGroup Constructor Description ThreadGroup(String name) 根据线程组名称创建线程组,其父线程组为main线程组 ThreadGroup(ThreadGroup parent, String name) 根据线程组名称创建线程组,其父线程组为指定的parent线程组

  • 两个构造函数的用法: 

浅谈一下Java线程组ThreadGroup

输出如下:

Active thread groups in main thread group: 2
java.lang.ThreadGroup[name=main,maxpri=10]
    Thread[main,5,main]
    java.lang.ThreadGroup[name=subgroup 1,maxpri=10]
    java.lang.ThreadGroup[name=subgroup 2,maxpri=10]

5 终止线程组中的所有线程

一个线程不应由其他线程来强制中断或停止,而是应该由线程自己自行停止。

因此 Thread.currentThread().stop(), Thread.currentThread().suspend(), Thread.currentThread().resume() 都已经被废弃了。

interrupt() 方法的作用是通知线程应该中断了,具体到底中断还是继续运行,由被通知的线程处理。

原文地址:https://javaedge.blog.csdn.net/article/details/104255721

延伸 · 阅读

精彩推荐