ThreadPoolExecutor.worker.run花费了太多时间

时间:2013-05-04 17:27:48

标签: java performance profiling executorservice threadpoolexecutor

我在CachedThreadPool执行了几项任务。经过一些分析后,我发现任务本身只运行了10%的时间,其他90%由threadpoolexecutor$worker.run使用(我正在使用jvisualvm进行分析)。

在这里,我被困住了。我无法弄清楚地狱threadpoolexecutor$worker.run正在做什么,为什么它耗费了这么多时间来完成它以及如何解决问题。我需要尽快运行任务。

这就是探查者所说的:

pool-2-thread-2                                          44542 ms (100%)
    java.util.concurrent.ThreadPoolExecutor$Worker.run   44542 ms (100%)
        Self time                                        39598 ms (88.9%)
        MyClass.run                                       4943 ms (11.1%)

可能Self time表示线程正在休眠?

提前致谢。 附:抱歉愚蠢,我不是一个优秀的java程序员。

0 个答案:

没有答案