从Java 5开始,java平台新增了一个叫做`java.util.concurrent`的package,这个package 包含了一系列的方便我们进行并发编程(多线程)的java 类。在没有这些便捷的Java 类之前,很多的并发编程工具类、数据结构都需要我们自己去开发。
在这个系列的文档中,我将带您一个一个的学习掌握`java.util.concurrent`(JUC)包里面的类。我使用的java版本是JDK 8,我不太确定是不是与JDK 5相比已经发生了有很大的变化。但目前看JDK 8 仍然是使用比较广泛的核心版本,所以我们使用它来实验学习。
- 线程
- 1.进程和线程-锁与信号量
- 2.Thread类线程状态转换
- 2.并发与并行-同步与异步
- 4.线程池
- 5.对象级别与类级别的同步锁
- 6.创建线程的四种方式
- 7.临界区-阻塞-活锁-死锁
- 2.JMM多线程模型
- JUC
- BlockingQueue
- ArrayBlockingQueue
- DelayQueue
- LinkedBlockingQueue
- PriorityBlockingQueue
- SynchronousQueue
- BlockingDeque
- ConcurrentHashMap
- CountDownLatch
- CyclicBarrier
- Exchanger
- AtomicInteger
- Lock
- Condition
- ReentrantLock读写锁
- StampedLock
- Semaphore