前端之家收集整理的这篇文章主要介绍了
完成后,java线程将被删除,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
说我每几秒钟使用下面的
方法生成一个线程,每个线程需要大约一秒钟才能完成.完成的线程是否被
删除?
new Thread (new myRunnableClass()).start();
线程完成后,本机的OS级别的线程就会被释放(大致在run()完成时),但线程对象像任何其他对象一样生活,直到它变得无法访问,并且
垃圾收集器感觉像运行一样.
编辑:也许有趣的是,线程(在Sun的Oracle的实现中,anywho)在线程退出时有一个由VM调用的私有方法,它会大量地使多个字段为null,包括引用由Thread设置的Runnable Runnable)构造函数.所以即使你保留对线程的引用,完成执行后它不需要的东西将被释放,无论如何.
原文链接:https://www.f2er.com/java/122841.html