当 Java 线程设置为 null 时会发生什么情况?

2022-09-01 15:19:56

线程启动后,如果线程的引用设置为 ,线程会发生什么情况?它会停止吗?是否有资格获得 GC?null

喜欢这个:

t.start();
t = null;

答案 1

即使其引用设置为 null,实时线程也将继续运行。
就像任何其他对象一样,当没有引用它时,它有资格GC。棘手的一点是,即使您的程序不保留一个引用,正在运行的线程在线程组中也有一个引用,因此正在运行的线程永远不会被 GCed。


答案 2

线程将会发生什么?

无。

它会停止吗?

不。

是否有资格获得 GC?

不。