摘要:
AQS 类中的属性以及方法说明 AbstractQueuedSynchronizer 类的描述信息 提供一个框架,用于实现依赖先进先出(FIFO)等待队列的阻塞锁和相关同步器(信号量、事件等)。此类被设计为大多数类型的同步器的有用基础,这些同步器依赖于单个原子 int 值来表示状态。子类必须定义 阅读全文
摘要:
/** * * * * * 拷贝的 AbstractQueuedSynchronizer(AQS) 的源码,进行代码注释 * 拷贝的 AbstractQueuedSynchronizer(AQS) 的源码,进行代码注释 * 拷贝的 AbstractQueuedSynchronizer(AQS) 的源 阅读全文
摘要:
AQS 中的 ConditionObject 内部类 ConditionObject 内部类 主要用作条件等待队列,条件等待队列为单项链表 加入条件队列的过程:等待队列的节点调用 await() 从同步队列移除,追加到条件队列的队尾 从条件队列出队的过程:当其他线程调用 single()/singl 阅读全文
摘要:
AQS 中的 Node 内部类 Node 内部类 Node 的主要作用:作为等待队列的节点存在 1.作为同步等待队列中的节点存在 (nextWaiter值为 SHARED/EXCLUSIVE 表示,该节点在某种模式下等待 ) 2.作为条件等待队列的节点存在(nextWaiter值为下一个节点,注意条 阅读全文