Java基础之——线程通信的理解

   前言:多线程的操作是高并发编程的基础,所以完全理解线程的操作是学好并发编程的第一步。

      1、stop():直接结束当前线程,不理会线程有没有执行完成

      2、sleep():让当前线程休眠一段时间之后执行。(当线程sleep()遇到中断interrupt()时,线程会抛出InterruptedException异常)
      3、interrupt() :中断线程,会设置中断标志位,表示当前线程被中断
         isInterrupted() :判断线程是否被中断(其实就是获取interrupt()中断方法的中断标志位)
         interrupted : 判断当前线程是否被中断,并清除中断标志位
      4、wait():线程等待,会释放对象锁,等到另外获取这个对象锁的线程执行notify()操作,就有机会重新获得锁
      5、notify()\notifyAll():唤醒一个或者所以当前对象锁上等待的线程。释放当前对象锁后,线程可以重新竞争该对象锁,之后可以继续执行之前wait()的线程
      6、suspend():挂起线程,但是不会释放锁(注:这种挂起之后必须执行resume()才能重新执行线程,要避免suspend()操作之前执行resume()那样可以可能造成死锁)
      7、resume():和suspend()配合继续执行挂起线程
      8、join():让当前线程等待目标线程执行完毕再执行,体现出一种顺序执行。

      9、yield():让当前线程让出cpu优点是线程间切换和调度的成本远低于进程


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值