此博客是本人从学生时代开始做笔记所用, 部分是工作所遇问题,做填坑笔记,部分闲来查阅资料,加上自己的理解所总结的学习笔记, 常忙得不可开交,若漏了资料来源,望通知~ 前路漫漫,写点东西告诉自己正在一点点进步,而不要迷失于繁忙。

挂起、睡眠、终止与阻塞

睡眠

睡眠都是由用户控制的,睡眠恢复则是自动完成的,睡眠时间到了则恢复到就绪态,睡眠时线程不会释放对象锁

eg: Thread.sleep()

备注:sleep方法属于Thread类

 

挂起

挂起是由用户控制的,挂起恢复需要用户主动控制,挂起时线程不会释放对象锁。

eg: thread1.suspend() //挂起   thread1.resume() //挂起

备注:suspend、resume均已被废弃,易引发死锁

 

终止

挂起是由用户控制的,终止一个线程时会强制中断线程的执行,不管run方法是否执行完了,并且还会释放这个线程所持有的所有的锁对象

eg: thread1.stop()

备注:同suspend,已废弃

 

阻塞

阻塞是被动的,是在等待某种事件或者资源的表现,一旦获得所需资源或者事件信息就自动恢复到就绪态

 

睡眠和挂起是两种行为,阻塞则是一种状态。

posted @ 2018-10-15 16:24  炎泽  阅读(1007)  评论(0编辑  收藏  举报