Tomcat Manager报告的线程数与ThreadMXBean不同。 ThreadMXBean报告的线程数与YourKit探查器中报告的线程数相同。 Tomcat线程和JVM线程之间有区别吗?
来自Tomcat Manager的专线:
最大线程数:200当前线程数:7当前线程忙:3
ManagementFactory.getThreadMXBean()信息getThreadCount():
38
答案 0 :(得分:6)
Tomcat线程是请求处理线程,并且不计算应用程序可能已启动的其他线程。
为了更好地了解其他主题是什么,请查看Thread.getAllStackTraces()
。
答案 1 :(得分:2)
根据javadocs,ManagementFactory.getThreadMXBean().getThreadCount()
:
返回当前线程的数量,包括守护进程和 非守护程序线程。
因此,JVM很可能有38个不同的线程(大多数在后台)。 Tomcat为每个请求创建一个新线程(以便它可以进行并发通信)。这两个数字可能会有所不同。