2016-11-28 171 views
0

在MAT工具中分析了堆转储之后。泄漏嫌疑人称 : 由“”加载的“java.util.TaskQueue”的一个实例占用680,207,896(82.39%)个字节。 实例被引用为 org.apache.tomcat.util.threads.TaskThread @ 0xc1b52018 ajp-bio-8009-exec-243,由“java.net.URLClassLoader @ 0xce67a9b8”加载。内存在由“”加载的“java.util.TimerTask []”的一个实例中累积。由java.util.TaskQueue引起的内存泄漏

但我的问题是为什么这不是垃圾收集和积累太多的内存。

+0

请任何人帮我。谢谢提前。 – Sharan

+0

嗨。你不会真的让我们继续下去。看起来你可能会在任务队列中放置某些东西,出于某种原因,这些东西不会被垃圾回收。你保留对物体的任何类型的参考吗?那将是第一个寻找它为什么会导致泄漏的地方。 – Ewald

+0

它不是垃圾回收可能是因为你的任务中的某个地方泄漏了引用,或者创建了永远不会被垃圾回收的对象。我怀疑你还保留了一些硬HashMaps或一般的地图,对吧? – AntJavaDev

回答

0

请检查这个answer或这个answer,也许它会帮助你。

我建议不要保留对它的描述活动上下文里面。我希望它有帮助。

+0

如果您认为此链接有问题,则应将该问题标记为重复。并提供有关该问题的更多信息,或仅将其作为评论发布。 – AxelH