线程的生命周期

Java线程生命周期:

   一个线程的大致生命周期分为:创建-就绪-(阻塞)-运行-死亡。

   1)创建:当一个thread被实例化出来后就完成了线程的创建;

   2)就绪:当一个线程调用了start()方法的时候,该线程就处于就绪的状态了;

   3)阻塞:如果一个就绪的线程,没有获得cpu的资源的时候,即处于阻塞状态,但我们通常调用wait()方法时候,可让该线程会处于等待状态‘

   4)运行:即如果该线程获得了cpu资源的时候,也就是执行run的方法;

   5)死亡:一个线程的run()方法执行完毕,或者未捕获一个未知异常的时候,该线程会死亡;’

   关于线程的方法的几个疑惑问题:

   sleep和wait区别:

   a)sleep属于Thread的方法,而wait属于object对象的方法;

   b)sleep方法并不释放锁,而wait方法会放弃锁的占用。

   c)sleep在指定一定睡眠后时间后会自动唤起,而wait方法直接将该线程挂起,需要调用notify来唤起该线程;

   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值