如何在c盘中查看java线程数

Python013

如何在c盘中查看java线程数,第1张

Windows

通过任务管理器查看进程信息

在进程页签中查看Java进程,我是idea启动,因此可以在idea下查看相关进程

此外可以在详细信息页签下Ctrl+f搜索java

通过控制台查看进程信息

进入CMD,键入tasklist,可以查看所有的进程信息,包括进程ID、内存使用情况

查看Java相关的进程,可以添加过滤条件 tasklist | findstr "java" ,需要注意windows中字符串需要使用双引号,要不就不加也是可以的

如果是在IDEA中启动程序,可以借用idea的Terminal终端执行命令

taskkill 杀死进程

杀死进程使用taskkill /pid 指定进程id,如果无法杀死,可以尝试强制杀死taskkill /pid 进程id -t -f

可以看到idea控制台中进程已结束

通过tasklist | findstr 进程id 已经无法查询到该进程,说明进程终止成功

理论上来说,如果你全用threadgroup来跑线程的话,有个叫enumerate的方法可以得到【该threadgroup下】所有active的(也就是你说的在工作的)线程以及子线程,但程序里面不一定是把线程放threadgroup里面的,有可能有人自己new一个出来run或者别的,所以不能完全依靠这个办法。我目前想到的办法,貌似得弄个全局的counter,开个守护线程,让这个线程去数监控所有线程的状态,依照线程是否Active去加减这个counter。

还有个懒点的,你看windows的taskmanager(假设你在win平台上的话),里面有一个column叫做thread

count的,我没试过到底准不准,不过这个最省事了,右键点出来一看就知道了。

public class  线程id

{

public static void main(String[] args) 

{

System.out.println("\n\t\t==========多线程怎么查看当前线程id==========\n")

init()

}//初始化!

private static void init()

{

for (int i=0i<2 i++ )

{

new Thread(new TestRunnable()).start()

}

}

}

class TestRunnable implements Runnable

{

//简单测试直接用了静态,偷懒了!

private static int i=10

public void run()

{

show()

}

synchronized void show()

{

while(i>=1)

System.out.println("当前执行的线程Id是:"+Thread.currentThread().getName()+"---->"+i--+"\n")

}

}