您的位置:首页 > 其它

线程的生命周期

2016-05-22 16:43 253 查看
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来唤起该线程;

   
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: