gpt4 book ai didi

java - 线程的无休止创建和运行是否会导致 PermGen OOM?

转载 作者:行者123 更新时间:2023-12-02 09:25:37 26 4
gpt4 key购买 nike

在我的进程中,我不断创建一个新的 Thread 对象(实际上是 Thread 的子类)(每秒最多几个),运行它并干净地结束。

我注意到,例如,当进程运行 25 天时,进程可能会死亡,留下 hprof,这意味着 OOM。但与分配给堆的内存相比,堆转储很小,因此它可能是 PermGen OOM,我正在尝试找出罪魁祸首。

我没有使用任何特殊的 jvm 参数禁止 -XX:+HeapDumpOnOutOfMemoryError

最佳答案

你的堆转储肯定应该告诉你 PermGen 的使用情况——你看过它吗?

无论如何,如果加载一个类的类加载器是GCd,那么它加载的类也是GCd;通常这是卸载类的唯一方法。您应该考虑使用应用程序级类加载器,并定期丢弃它;这将防止您的内存问题。

关于java - 线程的无休止创建和运行是否会导致 PermGen OOM?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5648311/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com