zoukankan      html  css  js  c++  java
  • notify wait sleep join yield yield

    notify 和 wait,他们的操作必须有一个公共的锁对象(就相当于下拉框option 的分组一样)

           notify通知之后,也要等到当前线程运行完成,才会释放锁,wait线程才能开始拿到锁,执行(wait()方法之后的)程序

      

    Object.wait()    Object.nitify()   Thread.sleep(),也就是说,sleep()方法是属于Thread调用的,wait() notify()属于Object的

    Object.wait()  会立即释放锁 Thread.sleep()不会释放锁

    join() 加入(拦截等待)  加入的线程先执行完,或者执行一定时间,才会让被加入(被阻断)的线程继续执行

    yield() 谦让       当前线程让出cpu,然后,一起加入到等待线程中

    volatile 关键字,对于保证操作的原子行有非常大的帮助,但是不能替代锁,它无法保证一些复合操作的原子性,比如,无法保证   i++  的原子性操作。

  • 相关阅读:
    Java异常简介
    Java中的接口
    Java中的抽象类
    Java的多态
    关于this
    面向对象的继承方式详解
    1像素边框问题
    HTML5之本地存储SessionStorage
    js数组去重的4个方法
    前端模块化
  • 原文地址:https://www.cnblogs.com/sg9527/p/7999438.html
Copyright © 2011-2022 走看看