java线程统计问题烦劳各位高手了? jdk1.4 如何计算统计 JVM自 启动以来创建和/或启动的线程总数。 谢谢各位了! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 用JVM的管理接口肯定可以,不过我没做过。你看看 jconsole 就知道了! Thread类中有一个int型的静态变量, 每次创建一个线程都会加1, 楼主可以用反射的方式取这个变量, 这个是Sun JDK里的,其它JDK实现没有查看但是new出来的Thread,不一定会调用start方法,也可能只是当runnable用的, 不一定准确正规的方法, 可以这样做, 首先通过Thread.currentThread().getThreadGroup()获取当前线程的线程组, 然后递归的取每个线程组的父线程组,一直到最顶的线程组,然后遍历线程组,获取所有的线程信息然后再统计个数,且可以根据Thread.isAlive(), Thread.getState(),获取线程信息当然上面的方法, 可能存在并发问题,可能有的线程,生命周期太短,无法检测如果需要更精确的方法, 只能通过改写JDK里的Thread方法或通过JDI来实现了 elipse 打包问题 java学习遇到了 很大的麻烦!跪求高手指点迷津! 谁能给出java 学习的高校学习方法! 有谁解释这个net.btdz.oa.common.*包,给100分 求一个给定数组中,和为某一定值的子数组 mysql 乱码问题 毕业论文问题请教 请大哥大姐指点 一个数据库更新问题~~~~在线求解~~~ 如何在第二个frame中改变第一个frame中的textfield显示?在线等 当鼠标处于某个区域,我怎么把指针变成小手啊?? 分布式计算的课题_老老鸟请进! 如何获取一个多列的文本框 为何图形不能画出?
你看看 jconsole 就知道了!
但是new出来的Thread,不一定会调用start方法,也可能只是当runnable用的, 不一定准确正规的方法, 可以这样做, 首先通过
Thread.currentThread().getThreadGroup()
获取当前线程的线程组, 然后递归的取每个线程组的父线程组,一直到最顶的线程组,然后遍历线程组,获取所有的线程信息
然后再统计个数,且可以根据Thread.isAlive(), Thread.getState(),获取线程信息
当然上面的方法, 可能存在并发问题,可能有的线程,生命周期太短,无法检测如果需要更精确的方法, 只能通过改写JDK里的Thread方法或通过JDI来实现了