Loading

一、锁

1、AQS写一个锁()  CLH

 

 

 

Lock

Synchronized

CAS  AQS子类定义为非公共内部帮助器类(私有的内部类继承AQS),写锁的时候的一个帮助器,提供获取锁和是释放锁的功能.模板。

acquire(int arg)           以独占模式获取对象,忽略中断。

acquireShared(int arg)       以共享模式获取对象,忽略中断。

tryAcquire(arg)   试图在独占模式下获取对象状态。

tryAcquireShared(int arg)           试图在共享模式下获取对象状态

release(int arg)           以独占模式释放对象。

releaseShared(int arg)           以共享模式释放对象

实例:

 

可重入性:同一个锁多统一资源进行占有的时候,直接分配给这个线程

2、ReentrantLock

  公平锁

  非公平锁

3、ReentrantReaderWriter

   读取者优先或写入者优先强加给锁访问的排序。但是,它确实支持可选的公平策略。

posted @ 2019-11-28 01:00  摇橙子  阅读(133)  评论(0编辑  收藏  举报