Java 线程的多种状态

前言

在前文中详细介绍了线程的启动、中断、休眠、等待。本文详细介绍线程的多种状态。

获取线程的当前状态代码是:

线程对象.getState();

目录

前言

一、NEW

二、RUNNABLE

三、BLOCKED

四、WAITNG

五、TIMED_WAITNG

六、TERMINATED

结语


一、NEW

Thread 对象创建好了,但还没有调用start()方法。如:

Java 线程的多种状态_第1张图片

 

二、RUNNABLE

就绪状态:1)线程正在cpu上运行; 2)即将运行

如:

Java 线程的多种状态_第2张图片

 

三、BLOCKED

因为锁产生阻塞,形成阻塞状态。如:

Java 线程的多种状态_第3张图片 

四、WAITNG

因为调用wait 产生阻塞,如:

Java 线程的多种状态_第4张图片

 

五、TIMED_WAITNG

因为sleep 或 join 带时间的方法 产生阻塞,如:

Java 线程的多种状态_第5张图片

 

六、TERMINATED

线程工作结束时的状态,如:

Java 线程的多种状态_第6张图片

 

结语

关于该六种线程状态,我们可以得出状态转换图:

Java 线程的多种状态_第7张图片

  这篇博客如果对你有帮助,给博主一个免费的点赞以示鼓励,欢迎各位点赞评论收藏⭐,谢谢!!!

你可能感兴趣的:(java,java,开发语言)