系统运行久了就会崩溃,有没有办法定位是什么地方内存泄漏导致的? 有什么案例可以参考一下嘛
系统运行久了就会崩溃,有没有办法定位是什么地方内存泄漏导致的? 有什么案例可以参考一下嘛
1
xaoduer Oct 10, 2019
内存泄露不是有 OOM 日志吗
|
2
arrow8899 Oct 10, 2019 -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/tmp
dump 出来后直接上 mat 分析 |
3
xionghongzhi Oct 10, 2019
你可以在它出现问题的时候, jstack 查看下具体哪里有问题.
jstack -l pid > xx.dump 然后找一下里面有没有你写的代码... |
4
yidinghe Oct 10, 2019
https://segmentfault.com/a/1190000020513539
看这篇文章,介绍内存分析工具的使用。如果想了解内存结构和垃圾回收,请从头看完该篇文章的整个系列。 |
6
aguesuka Oct 10, 2019 via Android
jmap 可以看类的内存占用
|
7
luozic Oct 10, 2019
现在有 GUI 的也有命令行的,刚开始玩推荐用 GUi 的定位,jprofiler 等等
|
8
zazalu Oct 10, 2019 via Android
太大的系统 dump 要半天呢。
|
9
timepast Oct 10, 2019 via iPhone
上面的方式应该能解决,我们前两天刚定位了相关问题
|
10
Raymon111111 Oct 10, 2019
最直接的方法是分析 dump 堆文件, 看看有什么不太符合预期类
|