Runnable不是java中的垃圾收集

时间:2012-10-02 00:44:26

标签: java garbage-collection

我已经看到许多Thread java示例和Runnable对象被创建为任务并传递给线程。 由于没有对这些任务的引用,为什么这个任务不被java垃圾收集? 或者是垃圾收集,我在这里问错了问题? 请分享您宝贵的想法。

1 个答案:

答案 0 :(得分:3)

您没有对对象的显式引用并不意味着内部JVM对象不能保存对象。

举个例子:

frame.add(new JButton("foobar"));

从开发人员的角度来看,没有对它的引用,但内部框架有一个组件列表。这是线程发生的情况,内部调度程序必须保证对它们的引用。

线程本身将在从调度程序释放时被垃圾收集(因此不再有效地存在引用)