【发布时间】:2015-09-02 04:03:26
【问题描述】:
我正在监视一个 java 应用程序的线程锁定场景,
在监控选项卡下的visualvm中,
直播话题:112 直播高峰:126 守护线程:99 开始总数:135,742
这是什么意思?我觉得有这么多的总启动线程数是不对的。线程创建是否有最佳数量? 我是 Java 编程新手。请帮忙
【问题讨论】:
-
VM 运行了多长时间,应用程序有哪些用途?当然,不可能有任何 最佳 启动线程数。当应用程序可以做不同的事情时,怎么可能呢?
-
@Kayaman 虚拟机运行了大约 15 小时。应用程序确实读取文件并将其存储在 DB 中。问题是当应用程序运行时 linux 资源不足,甚至没有打开终端。因此,猜测 linux 可能会用完最大线程数,并且不会进一步创建进程。但是重启系统有帮助。
-
嗯,对于当时这样的应用程序来说,这似乎很高(每分钟启动约 150 个线程)。但这只是启动线程总数的数字,您可以看到最多同时有 126 个活动线程,这不是问题。
标签: java multithreading profiling visualvm