java 多线程 线程的生命周期

线程的生命周期主要分为下面5个状态:

  • 1新建   new Thread

       当创建Thread类的一个实例(对象),继承Thread类,实现Runnable接口,调用Callable接口,此线程进入新建状态(未被启动)

  • 2就绪 runnable

   线程已被启动,线程对象创建好之后进入就绪状态,此时会等待获取CPU的执行权

  • 3运行 running

获取到CPU执行权之后,线程对象开始运行run()方法

  • 4阻塞 blocked

如果线程对象在执行过程中遇到了wait方法或者sleep方法,或者被另一个线程所阻塞(suspend方法,resume方法恢复),线程将会进入到阻塞状态。线程阻塞后要等待其他条件来触发(notify或者sleep睡眠时间到了),触发后会继续执行

  • 5死亡 dead

线程对象执行结束后或被其它线程杀死(stop方法),线程就进入死亡状态

线程的生命周期画图如下:

  

  

猜你喜欢

转载自blog.csdn.net/sinat_41132860/article/details/84556817