thread中sleep和wait的区别

Thread中sleep和wait区别

摘自《java高并发编程详解:多线程与架构设计》

waitsleep方法都可以使用当前线程进入阻塞状态,但两者存在本质的区别:

  • waitsleep方法都可以使用线程进入阻塞状态
  • waitsleep方法均是可中断方法,被中断后会收到中断异常
  • waitObject方法,而sleepThread特有的方法
  • wait方法的执行必须在同步方法中执行,而sleep不需要
  • 线程在同步方法中执行sleep方法时,并不会释放monitor的锁,而wait方法则会释放monitor
  • sleep方法短暂休眠之后会主动退出阻塞,而wait方法(没有指定wait时间)则需要被其他线程中断后才能退出阻塞
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值