Java的垃圾回收究竟如何处理线程?
为澄清起见,我有一个用Java写的对等网络,如果确定对等网络是恶意行为或被路由表拒绝,我将删除对Peer对象的所有引用,从而扩展了线程。
假设即使我删除了对该实例的所有引用,该实例的线程以及因此该实例也不会被垃圾收集器删除,这是正确的吗?
答案 0 :(得分:5)
不。它在运行时将不会被收集或停止。
您应从线程内停止线程,例如,使用命令cell_0
。
这是一个实验:
cell_1
这是结果:
return;
因此,即使在主线程将引用设置为null并停止工作之后,线程也没有停止或收集。