TERMINATED ZOMBIE 线程死亡,停止运行
RUNNABLE RUNNING/RUNNABLE 线程可运行或正在运行
TIMED_WAITING TIMED_WAIT 执行了带有超时参数的wait、sleep或join函数
BLOCKED MONITOR 线程阻塞,等待获取对象锁
WAITING WAIT 执行了无超时参数的wait函数
NEW INITIALIZING 新建,正在初始化,为其分配资源
NEW STARTING 新建,正在启动
RUNNABLE NATIVE 正在执行JNI本地函数
WAITING VMWAIT 正在等待VM资源
RUNNABLE SUSPENDED 线程暂停,通常是由于GC或者debug被暂停
UNKNOWN 未知状态
对比下来,发现Thread.java中很多状态都很模糊,不如Thread.cpp中定义的完善,需要结合线程当时的堆栈信息来分析具体的状态。