在JVM停止期间,thread pool
中的一些未正确关闭。由于此Perm Gen leak
发生,因为类加载器被限制为收集垃圾。
这些线程池由第三方应用程序(Elasticsearch)打开,除了client
实例之外,我没有任何直接控制权。
client
实例确实为shutting down
scheduler
和thread pool
提供了方法,但此错误未得到纠正。 “
请帮忙。有没有什么方法可以获取3rd Parties
ScheduledThreadPoolExecutor
的实例并通过Java应用程序关闭它?
答案 0 :(得分:0)
通过引用这两篇文章解决了答案:
Plumbr工具帮助提供了类加载器泄漏引用和导致内存泄漏的线程细节。
第1条: 本文建议如何找出导致内存泄漏的Thread创建者。
how to find out who create a thread in java?
@Aaron Digulla的回答救了我。特别是第4和第5点。
第2条: 本文建议如何关闭客户端。