如何查看jvm堆外内存使用情况?

关注者
21
被浏览
2,579

1 个回答

默认题主关注的是Direct Memory的使用情况,对于NonHeap Memory除了这个还有CodeCache、Metaspace等,可以通过JDK的MemoryPoolMXBean相关的API获取;对于直接内存:

1. VisualVM有两个插件可以通过GUI的方式查看DirectMemory的即时使用情况:Buffer Pools和MBeans Browser 参考:VisualVM: Plugins


2. 以人肉代码的方式获取,可以参考R大的工具,参见如何比较准确地估算一个Java进程到底申请了多大的Direct Memory?

为什么?