Ein*_*ren 19 java multithreading
这是关于Java线程词汇的一个非常基本的问题.
我看不到任何可能的重复,但可能会有.
这个词是什么活着是指甲骨文的文档?
是run()
方法尚未完成还是其他任何参数?
Mat*_*ieu 28
根据你提到的Javadoc:
如果线程已经启动并且尚未死亡,则该线程处于活动状态.
一个线程在其start()
方法被调用并在其run()
方法结束时"死"时 ,或者在stop()
调用(现在已弃用)时"启动" .所以是的,当一个线程的run()
方法仍在进行时,它是"活着的",但它在JVM 调用start()
和隐式调用run()
方法之间的时间窗口中也是"活着的" .
您还可以检查Thread.getState()
和有关线程状态有趣的信息由@Marou Maroun建议.
我也遵循他的建议警告你,如果抛出超出传播范围的异常,Thread可以提前结束run
.在那种情况下,线程将不再存在.
编辑:正如@zakkak所建议的那样,即使该run()
方法尚未启动,该线程也可被认为是活动的.如果您想要对何时调用它进行适当的控制,请使用ScheduledExecutorService
特别是schedule()
为您提供更精确执行计划的方法.
归档时间: |
|
查看次数: |
27900 次 |
最近记录: |