1 线程的几种状态
五种状态 创建状态(New) 就绪状态(Runabble) 运行状态(Running) 阻塞状态(Blocked) 死亡状态(Dead)
侵删 (网图)
1.1 New(新建)
解释 New 创建 new Thread() 这时候意味着创建一个线程 还未运行线程中的代码
1.2 Runnable (就绪)
Runnable (就绪) 调用start()方法使线程处于就绪状态 此时还未进入run方法体里面运行代码 获得cpu片才运行运行代码
1.3 Running(运行)
Running 当线程获得CPU片的时候才会运行方法体里面的代码 这是进入Running状态
处于Running状态的线程 当cpu片用完的时候 但是这时候run方法的代码还未运行完 这时候就进入就绪状态
通常情况下 运行中的线程一直处于Runnable状态和Running状态交替
1.4 Blocked (阻塞)
在Running状态的线程 会被sleep()方法,wait()方法,join()方法 等使线程处于阻塞状态 阻塞过了 就会再次进入Runnable状态 等待再次获取CPU片
1.5 死亡(Dead)
当线程运行完run方法 进入死亡状态