线程的6个状态(应该能应付一下考试)
2023-12-30 21:34:54
如果你是一个拉面店的老板,员工是cpu资源,顾客是线程
一天中午,你的拉面店人很多,总共6个后厨全都在工作,此时:
来了一名顾客,这位顾客坐在位置玩手机
1.由于这位顾客没有下单,可能正在手机上点餐,但是占用了这个位置,这就是 新建 状态。
顾客下单了一碗大碗牛肉面加荷包蛋
2.这时顾客已经下单,但是店里没有多余的后厨给它做饭,此时他就处于 就绪 态
终于有后厨忙完了其他的单子开始做这碗大碗牛肉面加荷包蛋
3.获取cpu时间后,系统分配时间片后这个流程就是 运行 态
还没给他做好,突然发现牛肉没有了,没了牛肉,准备送走的要牛肉的单子都卡住了,卡住之后后面不要牛肉的也跟着卡住了
4.由于某一步卡住导致整个流程卡住了,这就是 阻塞 态
不能就这么卡着,等牛肉准备好了后面的军少要生气了,就先把不加牛肉的送上去,要加牛肉的单子都等着吧
5.那么这些单子就进入了?等待?状态,后厨们暂时放弃它们又可以开始新的单子了
注意,等待和就绪不一样,等待是开始后暂停了,就绪是还没开始
终于牛肉也切好了,可以把放置的单子继续完成了
等待结束之后的进程会进入到就绪态,但优先级不一定比新建的就绪态高
牛肉面终于端到了顾客桌上,这时候就已经完成了?
6.进程处于完成状态或者因为意外退出都是终止状态?
文章来源:https://blog.csdn.net/weixin_44464046/article/details/135308694
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!