Java多线程入门5-线程状态和线程方法

一、JDK帮助手册

  打开JDK帮助手册,搜索Thread.State

在这里插入图片描述

  线程状态容易跟操作系统的进程状态混淆。通过帮助手册,我们可以知道线程的确切状态是6种。

二、线程状态

在这里插入图片描述

1. 初始状态

  新创建了一个线程对象,但还没有调用start()方法时。

2.1. 就绪状态

  1. 调用线程的start()方法,此线程进入就绪状态。
  2. 当前线程sleep()方法结束,当前线程进入就绪状态。
  3. 其他线程join()结束,当前线程进入就绪状态。
  4. 当前线程时间片用完了,调用当前线程的yield()方法,当前线程进入就绪状态。
  5. 锁池里的线程拿到对象锁后,进入就绪状态。

2.2. 运行中状态

  线程调度程序从可运行池中选择一个线程获得CPU时间片后,被选中线程进入的状态。这也是线程进入运行状态的唯一一种方式。

3. 阻塞状态

  阻塞状态是线程阻塞在进入synchronized关键字修饰的方法或代码块(获取锁)时的状态。

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值