如何以编程方式了解我的 PermGen 空间使用情况?
2022-09-01 18:52:06
我试图在Sun的Hotspot JVM上运行时诊断错误,并且想知道我的程序在各个点上使用了多少PermGen空间。有没有办法以编程方式查找此信息?java.lang.OutOfMemoryError: PermGen Space
我试图在Sun的Hotspot JVM上运行时诊断错误,并且想知道我的程序在各个点上使用了多少PermGen空间。有没有办法以编程方式查找此信息?java.lang.OutOfMemoryError: PermGen Space
您可以使用类似如下的内容:
Iterator<MemoryPoolMXBean> iter = ManagementFactory.getMemoryPoolMXBeans().iterator();
while (iter.hasNext())
{
MemoryPoolMXBean item = iter.next();
String name = item.getName();
MemoryType type = item.getType();
MemoryUsage usage = item.getUsage();
MemoryUsage peak = item.getPeakUsage();
MemoryUsage collections = item.getCollectionUsage();
}
这将为您提供所有类型的内存。您对“彼尔姆将军”类型感兴趣。