简体   繁体   中英

How to check Daemon Thread status in java?

In myprogram I need to check if daemon thread is finished or not. Can I use isAlive() method for Daemon thread?

Actually you can ask the Thread for its current status by calling:

Thread.State ts = thread.getState();

and you should get one of the follwing:

A thread state. A thread can be in one of the following states:

  • NEW A thread that has not yet started is in this state.

  • RUNNABLE A thread executing in the Java virtual machine is in this state.

  • BLOCKED A thread that is blocked waiting for a monitor lock is in this state.

  • WAITING A thread that is waiting indefinitely for another thread to perform a particular action is in this state.

  • TIMED_WAITING A thread that is waiting for another thread to perform an action for up to a specified waiting time is in this state.

  • TERMINATED A thread that has exited is in this state.

根据Java文档isAlive()方法并不关心您的线程是否是守护程序,守护程序仍然是线程,因此可以回答您的问题,可以。

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM