Windows
- 任务管理器,进程ID是PID
- CMD-task list
Java
- jps 查看所有Java 进程
- jstack 查看某个Java进程的所有线程状态
- jconsole 查看某个Java进程中线程的运行情况(图形界面)
案例:找到死循环线程并杀死他
写一个死循环程序,用一个线程输出“死循环线程”
package com.zqh.day1;
/**
* 一个死循环线程,在任务管理器找到他
*/
public class WhileTrueThread {
public static void main(String[] args) {
Runnable r = ()->{
while (true){
System.out.println("死循环线程");
}
};
Thread thread = new Thread(r);
thread.start();
}
}
在CMD输入jps,找到这个类的进程
前面是PID,然后用taskkill /F /PID 杀死,再看idea
jconsole
把刚刚的死循环打开,然后cmd输入jconsole。可以看到
切到线程,Java里活动的线程有15个。也能看到死循环的线程Thread0