JAVA-多线程-生命周期

1:新建 当一个线程TicktThread1 thread1 = new TicktThread1(“窗口1”, ticket); 被new 出来的时候。线程就是一个新建的状态。

2:就绪状态:当调用了start 方法之后。进入就绪状态。
就绪状态是什么状态:某一个时刻cpu 只能处理一个线程的事物。把时间片分配给需要执行的进程中的线程。
线程就绪状态之后,进入等待队列,等待cpu 的时间片的来临。当cpu 的时间片分配给某一个线程的时候,该线程才进入运行状态。当该线程的时间片结束后。又进入就绪状态
进入等待队列,等待下一个时间片的来临。这个过程称为cpu的调度。

3:运行状态:从线程的就绪状态,等待到cpu 的调度执行,就进入了运行状态。

4:阻塞状态:在运行状态下。如果发生了一些阻塞事件(等待IO的资源 比如,scanner的输入,比如sleep 线程休眠)进入阻塞状态。只有解除了产生阻塞的原因。进入到就绪状态。

5:死亡状态:1:run方法正常结束。2:run方法中产生异常,也会终止线程的。3:调用线程终止是方法。stop (不建议使用)。存在潜在的危险性。

猜你喜欢

转载自blog.csdn.net/qq_37131111/article/details/79678148