摘要:
一、CountDownLatch 文档描述 A synchronization aid that allows one or more threads to wait until a set of operations being performed in other threads complet 阅读全文
摘要:
一、概念 利用锁机制实现线程同步,synchronized关键字的底层交由了JVM通过C++来实现 Java中的锁有两大特性: 互斥性 同一时间,只允许一个线程持有某个对象锁。 可见性 锁释放前,线程对变量的修改,后面获得锁的线程可见。 可见性 JMM关于synchronized的两条规定: 1. 阅读全文
摘要:
背景和作用 在同步组件的实现中,AQS是核心部分,同步组件的实现者通过使用AQS提供的模板方法实现同步组件语义,AQS则实现了对同步状态的管理,以及对阻塞线程进行排队,等待通知等等一些底层的实现处理。AQS的核心也包括了这些方面:同步队列,独占式锁的获取和释放,共享锁的获取和释放以及可中断锁,超时等 阅读全文
摘要:
一、介绍 volatile保证共享变量的“可见性”。可见性指的是当一个线程修改变量时,另一个线程能读到这个修改的值。 这里就要提出几个问题。 问题1:为什么一个线程修改时,另一个线程可能会“看不见”? 问题2:这种可见性是如何实现的? 二、问题1 变量为何“不可见” 回答:是由于缓存导致的可见性问题 阅读全文
摘要:
ReentrantReadWriteLock 阅读全文
摘要:
介绍 依赖关系 源码 构造方法 参考文档 "10.并发包阻塞队列之ArrayBlockingQueue" 阅读全文