保存对活动线程的引用的对象的垃圾收集

时间:2009-06-21 00:06:02

标签: java multithreading garbage-collection

我有一个对象,它包含对2个守护程序线程的引用。我正在考虑没有取消初始化的角落情况,所以我可以确定是否需要终结器。去初始化的功能会停止线程。我可以继续添加终结器,但我很好奇:

  1. 当上述线程处于活动状态时,对象是否可以收集垃圾?

  2. 如果它可以收集垃圾,线程会被中断吗?

1 个答案:

答案 0 :(得分:1)

你不应该在最终确定时停止线程,因为
应该使应用程序的行为依赖于垃圾收集。

垃圾收集非常不确定性:

  • 不同的JVM,
  • 不同的JVM切换器,
  • 不同的操作系统,
  • 不同的硬件架构,
  • 不同的硬件细节(CPU,内核,内存)......

一切都会影响垃圾收集。

所以,只需重新思考你的概念,并给我们更多的信息,为什么一个线程应该 停下来的时候。