java线程状态和操作系统线程状态,线程有哪些基本状态

  java线程状态和操作系统线程状态,线程有哪些基本状态

  如何解决写爬虫IP受阻的问题?立即使用。

  操作环境:windows7系统,戴尔G3电脑,Java8.0版本8.0。

  java线程状态:

  1. 新建状态(New): 线程对象创建后,进入新状态。

  例如,Thread thread=new Thread()。

  2. 就绪状态(Runnable): 也叫“可执行状态”。创建对象后,其他线程调用对象的start()方法来启动线程。例如thread.start()。处于就绪状态的线程可以由CPU在任何时候调度和执行。

  3. 运行状态(Running):线程获得CPU许可执行。请注意,线程只能从就绪状态进入运行状态。

  4. 阻塞状态(Blocked): 阻塞状态是线程因为某种原因放弃使用CPU的权利,暂时停止运行。在线程进入就绪状态之前,没有机会进入运行状态。有三种阻塞情况:

  (01)等待阻塞——通过调用线程的wait()方法,让线程等待某项工作的完成。

  (02)同步阻塞——当一个线程获取同步的同步锁失败时(因为锁被其他线程占用),就会进入同步阻塞状态。

  (03)其他阻塞——当调用一个线程的sleep()或join()或者发出一个I/O请求时,线程就会进入阻塞状态。当sleep()状态超时,join()等待线程终止或超时,或者I/O处理完成时,线程返回就绪状态。

  5. 死亡状态(Dead): 当线程由于异常而结束执行或退出run()方法时,线程结束其生命周期。

  这就是java线程状态的细节。更多详情请关注我们的其他相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: