在myprogram中,我需要检查守护程序线程是否已完成。
我可以对守护程序线程使用isAlive()
方法吗?
答案 0 :(得分:1)
实际上,您可以通过调用以下方式询问线程的当前状态:
Thread.State ts = thread.getState();
你应该得到以下其中一个:
线程状态。线程可以处于以下状态之一:
新强> 尚未启动的线程处于此状态。
<强> RUNNABLE 强> 在Java虚拟机中执行的线程处于此状态。
<强> BLOCKED 强> 被阻塞等待监视器锁定的线程处于此状态。
<强>等待强> 无限期等待另一个线程执行特定操作的线程处于此状态。
<强> TIMED_WAITING 强> 正在等待另一个线程执行最多指定等待时间的操作的线程处于此状态。
<强>封端的强> 已退出的线程处于此状态。
答案 1 :(得分:0)
根据Java doc,isAlive()
方法并不关心你的线程是否是一个守护进程,守护进程仍然是一个线程所以回答你的问题,是的,你可以。