我需要使用定期收集 JVM 的统计信息。稍后,我需要记录 JVM 可用内存/空闲内存、已用内存、总内存。
以下是我想到的两个选项。
ManagementFactory.getMemoryPoolMXBeans() 并遍历每个 MemoryPoolMXBean,最后使用 MemoryPoolMXBean.getUsage() 收集统计信息。
Runtime.freeMemory()、Runtime.maxMemory()、Runtime.totalMemory
这是收集统计数据的最佳方式。使用 MemoryPoolMXBean.getUsage() 或运行时类。