如何检查Java中当前正在运行的线程的数量?

我正在寻找一种方式来查看当前正在运行的线程的数量

>通过Windows首先
>以编程方式

解决方法

这将给您虚拟机中的线程总数:
int nbThreads =  Thread.getAllStackTraces().keySet().size();

现在,如果您希望所有线程正在执行,您可以这样做:

int nbRunning = 0;
for (Thread t : Thread.getAllStackTraces().keySet()) {
    if (t.getState()==Thread.State.RUNNABLE) nbRunning++;
}

这里列举了可能的状态:Thread.State javadoc

如果你想看到运行的线程不是程序设计,而是使用Windows工具,你可以使用Process Explorer.

相关文章

最近看了一下学习资料,感觉进制转换其实还是挺有意思的,尤...
/*HashSet 基本操作 * --set:元素是无序的,存入和取出顺序不...
/*list 基本操作 * * List a=new List(); * 增 * a.add(inde...
/* * 内部类 * */ 1 class OutClass{ 2 //定义外部类的成员变...
集合的操作Iterator、Collection、Set和HashSet关系Iterator...
接口中常量的修饰关键字:public,static,final(常量)函数...