可以使用ThreadGroup类的destroy()方法销毁线程组。它将清理线程组并将其从线程组层次结构中删除。它不仅破坏了线程组,还破坏了它的所有子组。

destroy()方法用途有限:只有在线程组中当前没有线程时,才能调用该方法。package org.nhooo.example.lang;

public class ThreadGroupDestroy {

public static void main(String[] args) {

ThreadGroup root = new ThreadGroup("Root");

ThreadGroup server = new ThreadGroup(root, "ServerGroup");

ThreadGroup client = new ThreadGroup(root, "ClientGroup");

// 销毁“ root”线程组及其所有子组

// ('server' & 'client')

root.destroy();

// 检查“根”组及其子组是否已被销毁

if (root.isDestroyed()) {

System.out.println("Root group is destroyed");

}

if (server.isDestroyed()) {

System.out.println("Server group is destroyed");

}

if (client.isDestroyed()) {

System.out.println("Client group is destroyed");

}

}

}

线程的销毁java,Java如何销毁线程组?相关推荐

  1. java new一个线程执行完后会自动销毁吗_Java基础总结,超级全的面试题

    1. static关键字是什么意思?Java 中是否可以覆盖(override)一个 private 或者是 static 的方法?是否可以在 static 环境中访问非static 变量? stat ...

  2. java 线程的销毁_Java 线程(1)- 创建与销毁

    Java 采用 thread-per-task 的线程模型,即一个任务(一段代码)对应一个 Java 线程(thread),而一个 Java 线程对应一个操作系统线程,所以了解一些操作系统进程的管理知 ...

  3. java 手编线程池_死磕 java线程系列之自己动手写一个线程池

    欢迎关注我的公众号"彤哥读源码",查看更多源码系列文章, 与彤哥一起畅游源码的海洋. (手机横屏看源码更方便) 问题 (1)自己动手写一个线程池需要考虑哪些因素? (2)自己动手写 ...

  4. Java内存模型与线程

    一.一致性 高速缓存的存储交互很好的解决了处理器与内存的速度矛盾,但也存在缓存一致性(cache coherence)问题 二.java内存模型 内存模型:对特定的内存或高速缓存进行读写访问的过程抽象 ...

  5. java 1000个线程_java,一个程序建立1000个线程,每一个线程加1到一个变量sum。

    1.程序建立1000个线程,有可能造成系统创建大量线程而导致消耗完系统内存,还会增加创建和销毁线程上所花的时间以及系统资源的开销 2.在创建线程数多的情况下,可以考虑使用线程池 以下是Java自带的几 ...

  6. java多线程抽奖_java 线程池、多线程并发实战(生产者消费者模型 1 vs 10) 附案例源码...

    导读 前二天写了一篇<Java 多线程并发编程>点我直达,放国庆,在家闲着没事,继续写剩下的东西,开干! 线程池 为什么要使用线程池 例如web服务器.数据库服务器.文件服务器或邮件服务器 ...

  7. Java并发编程:线程池

    一.为什么使用线程池 使用线程的时候直接就去创建一个线程,这样实现起来非常简便,但是就会有一个问题: 如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降 ...

  8. JAVA并发编程8_线程池的使用

    不使用线程池 1.串行执行任务 class SingleThreadWebServer {public static void main(String[] args) {ServerSocket so ...

  9. 掌握JAVA多线程的利器-线程池

    为什么80%的码农都做不了架构师?>>>    相信大多数接触过多线程的朋友都会有这样的困惑,明明使用了多线程,为何还是一团糟?用下面两幅图再合适不过了: 理想情况下的多线程VS 现 ...

  10. 【Java 并发编程】线程池机制 ( 线程池执行任务细节分析 | 线程池执行 execute 源码分析 | 先创建核心线程 | 再放入阻塞队列 | 最后创建非核心线程 )

    文章目录 一.线程池执行任务细节分析 二.线程池执行 execute 源码分析 一.线程池执行任务细节分析 线程池执行细节分析 : 核心线程数 101010 , 最大小成熟 202020 , 非核心线 ...

最新文章

  1. 解决ubuntu上opengl的问题
  2. 一些信号与自己的卷积结果
  3. HTML和jQuery拆分成两个文件
  4. 29 基于PCL的点云平面分割拟合算法技术路线(针对有噪声的点云数据)
  5. js除法与C语言除法,JS算术运算符及用法
  6. SAP CRM WebClient UI的configuration按钮是否显示,取决于这个权限检查
  7. [python教程入门学习]使用Python六步制作小鸟管道游戏(附源码)
  8. ipa解包打包工具_ios打包ipa的四种实用方法(.app转.ipa)
  9. 男子趁前女友熟睡翻开眼皮,刷脸转走15万!支付宝:几率很小
  10. 2016年Google面筋记录
  11. mysql配置方案_MySQL的安装与配置
  12. AI智能人脸识别系统
  13. iOS-深拷贝和浅拷贝
  14. html+css+js制作原神官网,web前端大作业(流风眷堇庭+6个页面+链接)
  15. python之selenium设置浏览器为手机模式(开发者模式)
  16. java判断内网ip_Java判断IP地址为内网IP还是公网IP的方法
  17. ECharts之横向柱状图二
  18. 查看linux 系统 服务器型号
  19. 分析时间序列数据的六个图表
  20. [C#] C#深入浅出4th Edition [2]

热门文章

  1. 吴恩达深度学习课程第五课笔记——序列模型
  2. mysql prepare 注入_PDO prepare足以防止SQL注入吗?
  3. 小学职称计算机考试,中小学职称计算机考试
  4. android drawtext 方法,关于Android Canvas.drawText方法中的坐标参数的正确解释
  5. php开放平台,千米开放平台
  6. union all的效率问题
  7. 计算机软件著作权有多重要
  8. 鲁大师Q1季度最强CPU:AMD 3990X持续坐稳第一名!
  9. 中国科学家成功让公鼠怀孕产子!全球首次,10只幼崽非常健康
  10. Win7系统如何关闭自动播放功能