美文网首页
锁<一>ReentrantLock

锁<一>ReentrantLock

作者: miky_zheng | 来源:发表于2019-01-27 15:58 被阅读0次

可重入的互斥锁特点

官方推荐使用方法:

 *  <pre> {@code
 * class X {
 *   private final ReentrantLock lock = new ReentrantLock();
 *   // ...
 *
 *   public void m() {
 *     lock.lock();  // block until condition holds
 *     try {
 *       // ... method body
 *     } finally {
 *       lock.unlock()
 *     }
 *   }
 * }}</pre>
//构造函数
 public ReentrantLock() {
        sync = new NonfairSync();
    }
  public ReentrantLock(boolean fair) {
        sync = fair ? new FairSync() : new NonfairSync();
    }
 public void lock() {
        sync.lock();
    }
   public void unlock() {
        sync.release(1);
    }

划重点:核心类AbstractQueuedSynchronizer

CountDownLatch、FutureTask、Semaphore、ReentrantLock等都有一个内部类是这个抽象类的子类
后面再分析该结构,并补充该文

相关文章

网友评论

      本文标题:锁<一>ReentrantLock

      本文链接:https://www.haomeiwen.com/subject/pozgjqtx.html