学习笔记(01):Java并发编程精讲-线程状态及Java中线程常见方法

立即学习:https://edu.csdn.net/course/play/26270/326860?utm_source=blogtoedu

同步调用和阻塞区别:

同步调用时线程不一定是挂起状态。

 

线程状态:

NEW:被创建还没执行;

RUNNABLE(RUNNING,READY):线程已被放入Java虚拟机但有可能是在等待操作系统的资源(还没被操作系统处理器执行);

BLOCK:阻塞,正在等待监视器锁,来进入或重入synchronized;

WATING:等待,需其他线程中断或通知来唤醒;

TIMED_WATING:加了时长限制的等待,到时长后返回,或提前被中断或唤醒;

TERMINATED:已执行完毕。

 

线程调用的几种方法:

1.Thread.yield():线程让步,调用此方法,当前线程让出CPU资源,和其他线程重新一起再竞争资源来执行;

2.Thread.join():某一线程在调用该方法后,主线程或其他线程会等待此线程死亡或执行完毕后再执行;

3.Thread.sleep():线程休眠,调用方法后主动让出CPU一段时间,指定时间过后CPU会返回继续执行该线程,并且该线程不会释放持有的锁;

4.Object.wait():调用该方法前线程必须持有对象锁,调用此方法后,线程释放对象锁,进入WAITING状态,等其他线程调用notifyAll()等唤醒方法将自己唤醒,在拿到对象锁后继续之前的代码执行。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值