观测线程的工具——jconsole

joconsole的简单使用

joncole位置在jdk/bin路径中,在进入路径后可以查找到jconsole.exe的应用程序。如图:

双击创建jconsole进程,可以在里面选择所要观测的java文件。

以我的代码为例:

bash 复制代码
class MyThread extends Thread {
    @Override
    public void run() {
        while (true){
            System.out.println("hello thread");
        }

    }
}
public class ThreadDemo1{
    public static void main(String[] args) {
        Thread t = new MyThread();
        t.start();
        while (true){
            System.out.println("hello main");
        }
    }
}

进入其中可以选择"线程"模块进行观测

我们可以看到在线程数据图表中显示着在运行这个java文件中创建了最多17个线程;而在下方告诉了我们线程有哪些;我们所需要的观测线程为Thread-0线程和main线程。点击观察main线程,我们可以在右边观察到该线程的状态和各种信息。

通过上面的图片可以看到线程的状态始终为RUNNABLE,并且等待数为0.因此我们可以得出:线程是并发执行的结论。

相关推荐
wdfk_prog25 分钟前
嵌入式面试真题第 10 题:高优化等级下共享状态可见性、内存模型与系统级同步设计
java·linux·开发语言·面试·职场和发展·架构·c
卓怡学长34 分钟前
w255基于springboot仓库管理系统
java·数据库·spring boot·spring·intellij-idea
这个DBA有点耶3 小时前
SQL调优进阶:从“优化一条SQL”到“优化一个系统”的思维升级
java·大数据·数据库·sql·程序人生·dba·改行学it
许彰午4 小时前
95_Python内存管理与垃圾回收
开发语言·python
csdn2015_4 小时前
springboot读取配置的方法
java·spring boot·spring
多加点辣也没关系4 小时前
JavaScript|第13章:原始类型的方法
开发语言·javascript·ecmascript
এ慕ོ冬℘゜4 小时前
深入理解 JavaScript 事件体系:Window、鼠标与键盘事件详解
开发语言·javascript·okhttp
AOwhisky4 小时前
下一代容器来了?Docker 宣布原生支持 WebAssembly
java·运维·docker·容器·rust·wasm
chouchuang6 小时前
day-030-综合练习-笔记管理器
开发语言·笔记·python
云云只是个程序马喽6 小时前
海外短剧平台搭建方案:私有化源码系统选型|云微短剧系统技术架构拆解
java·php