线程可以有4个状态,
New (新生)
Runnable (可运行)(这里和Runnable接口没有任何关系!!!)
Blocked (被阻塞)
Dead (死亡)
新生线程:
new操作即新生一个线程,例如 new Thread(t)。
可运行:
线程调用start()方法即进入可运行状态。
被阻塞:
线程调用sleep()方法进入阻塞状态;
线程在IO上阻塞;
线程试图得到一个锁lock阻塞;
线程在等待某个触发条件;
调用了线程的suspend()方法。
死亡:
run()方法正常退出死亡;
一个未捕获的异常终止了run()方法而使线程死亡。
boolean isAlive()
如果线程已经启动,但还没终止,则返回true;
void stop()
停止线程,这个方法已经过时了;
void suspend()
挂起线程,这个方法已经过时了;
void resume()
恢复线程,这个方法已经过时了;
void join()
等待直到线程死亡。
void join(long millis)
等待直到线程死亡或经过的毫秒数。