线程的生命周期
线程的生命周期
图解析
1.一般情况下线程主要经历: 准备, 就绪, 运行, 死亡四种状态.
2.准备:即创建线程, 包括集成Thread, 线程池, spring方式等等
3.就绪:线程创建并调用start()方法并不代表线程将立即获得资源, 而是进入到就绪状态进行资源分配
4.运行:抢占到资源的线程将执行, 执行过程可能会含有一些别的操作
 1).线程等待, 直到调用 notify()或notifyAll()方法被唤醒, 这里唤醒后不会立即继续执行线程, 而是进入就绪状态重新抢占资源
 2).线程休眠, 直到休眠时间结束, 同样结束后不会立即继续执行线程, 而是进入就绪状态重新抢占资源
 3).线程阻塞, IO资源阻塞, 锁等方式使线程进入阻塞队列, 释放锁将继续执行
5.死亡: 调用stop()方法, 线程中断, 或线程执行完毕则线程死亡
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 程序员小航!
评论