我的空无限循环
public static void main(String[] args) {
while (true) {}
}
并在 Java VisualVM 中进行分析(图片)
如您所见,我不创建对象。为什么要换一个堆?
请解释一下效果。为什么?
最佳答案
基本上任何 Java 应用程序都是多线程的,您的主线程不分配内存这一事实并不意味着其他线程也不分配。事实上,很可能通过 VisualVM 附加并显示 GC 选项卡,您在 VM 中生成了一些线程来监视 GC 资源并为 VisualVM 提供成为那些 Shiny 图表的指标。而且该监控可能会分配一些自己的资源来完成它的工作。
关于java - 空无限循环和 GC (JVM)。请说明效果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13868693/