因第三方依赖中造成的 GC OOM 如何处理

2020-08-04 09:59:54 +08:00
 stephCurry
项目中,引用第三方依赖,由于处理字节码反编译,所以很消耗内存,给 jvm 分配 5g 也会消耗殆尽。所以,有什么办法可以强制其运行一段时间后无结果即抛弃并终止其线程运行? 现在通过线程 FutureGet 强制一定时间后返回,但是并不能真正终止线程,于是其线程继续再后台运行,导致 GC OutOfMemoryError 。

难道只能通过将其依赖单独出,通过 Runtime.exec("java -jar xxx.jar"),然后规定时间之后 kill -9 $pid?
1335 次点击
所在节点    Java
0 条回复

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/695424

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX