Java线程有6种状态,分别是:
新建状态(New):创建一个线程对象,但尚未调用start()方法启动线程。
就绪状态(Runnable):线程已经通过start()方法启动,但尚未执行run()方法。处于就绪状态的线程等待系统分配执行时间。
运行状态(Running):线程正在执行run()方法的代码。
阻塞状态(Blocked):线程因为某些原因被阻塞,暂时无法执行。常见的阻塞原因包括等待I/O操作、等待获取同步锁等。
等待状态(Waiting):线程因为调用了Object.wait()、Thread.join()或LockSupport.park()等方法而进入等待状态,等待其他线程的通知。
终止状态(Terminated):线程执行完run()方法,或者因为异常而提前退出,进入终止状态。