即使我的程序没有创建任何新对象,为什么堆利用率会随着时间的推移而增加?

ptk*_*ptk 0 java visualvm jvisualvm

这是一个非常基本的问题.但我没有通过互联网得到任何明确的答案.我有以下代码

public static void main(String[] args) throws InterruptedException {
    Thread.sleep(1000000);
}
Run Code Online (Sandbox Code Playgroud)

我连接了JVisualVM并开始监视堆使用情况.我可以看到堆使用量随着时间的推移逐渐增加.但是,这里我没有创建任何新对象.这背后的原因是什么?为什么在没有创建任何新对象的情况下堆利用率会增加?

提前致谢.

ewr*_*ner 7

如果你已经与jvisualvm连接,你应该能够看到有很多线程,而不仅仅是主应用程序线程.对象始终创建.例如,探查器本身肯定会创建对象.这是正常的.