java的while循环中被new的对象在一次循环结束后 会被垃圾回收吗?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java的while循环中被new的对象在一次循环结束后 会被垃圾回收吗?相关的知识,希望对你有一定的参考价值。

例:
while(true)
Test test = new Test();
...

...
Thread tr = new Thread(test);

tr.start();

//线程在运行结束后会自动消亡,但是其他new的对象呢?是立即被垃圾回收,还是会滞留在内存中。

您好,提问者:
while循环完一次,会被回收。
但是至于什么时候被回收,要看jvm的回收线程。
不过我们可以指向null,例如:test = null,用完会立即回收。
还有就是System.gc();方法,已通知jvm进行回收。
参考技术A 会被垃圾回收器回收 参考技术B 会被gc回收

以上是关于java的while循环中被new的对象在一次循环结束后 会被垃圾回收吗?的主要内容,如果未能解决你的问题,请参考以下文章

我的 do while 循环在一次迭代后停止。我该如何继续下去?

while 循环中的 Thread.sleep() 不能正常工作?

java ArrayList循环增加add(对象)总是被最后一个覆盖,把new 对象放在循环里面也是,求大神帮忙

labview停止循环为啥波形会清除一次

结果集在while循环中仅迭代一次

面试中被问Spring循环依赖的三种方式!!!