首页 > 编程知识 正文

java线程的六种状态,线程的五种运行状态

时间:2023-05-05 07:51:01 阅读:200869 作者:1049

java线程的状态常见的有两种说法,一种是将其分为6种一种是分为5种

1. 六种:

划分依据:主要是从java代码的角度来进行划分。

1. 新建状态 :

使用new关键字创建一个thread对象,刚刚创建出的这个线程就处于新建状态。在这个状态的线程没有与操作系真正的线程产生关联,仅仅是一个java对象。

2. 可运行:

正在进行运行的线程,只有处于可运行状态的线程才会得到cpu资源。

3. 阻塞 :

在可运行阶段争抢锁失败的线程就会从可运行—>阻塞

4. 等待 :

可运行状态争抢锁成功,但是资源不满足,主动放弃锁(调用wait()方法)。条件满足后再恢复可运行状态(调用notiy()方法)。

5. 有时限等待:

类似于等待,不过区别在于有一个等待的时间,到达等待时间后或者调用notiy(),都能恢复为可运行状态。

有两种方式可以进入有时限等待:wait(Long)和sleep(Long)

6. 终结 :代码全部执行完毕后,会进入到终结状态,释放所有的资源。

2. 五

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。