A JUC java并发编程 目录

A JUC java并发编程 目录

juc 并发

一、学习书籍

文章目录

《java多线程编程核心技术》

A JUC java并发编程 目录

《java并发编程的艺术》

A JUC java并发编程 目录

二、实战(常用工具)

调试工具

2.1 jstack

2.2 vmstat

2.3 Arthas

三、内存模型

内存模型

3.1 Synchronized、Volatile、原子性(底层原理)

Synchronized、Volatile、原子性

3.2 重排序

3.3 synchronized、volatile和final

3.4 内存模型的设计

四、线程介绍

4.1 线程基础

java 线程的基础概念

4.2 线程通信

java 线程的基础概念

4.2.1 等待/通知机制

4.2.2 管道输入/输出

4.2.3 ThreadLocal、超时等待

4.2.4 ThreadJoin/synchronized、volatile

五、锁的使用

锁的使用

5.1 lock 锁

5.2 同步器abstractQueuedSynchronizer

5.2.1 独占锁Mutex

5.2.2 同步队列

5.2.3 独占式

5.2.4 共享式

5.3 ReentrantLock

5.3.1 公平锁:tryAcquire

5.3.2 非公平锁:nonfairTryAcquire

5.4 ReadWriteLock

5.4.1 readLock锁

5.4.2 writeLock锁

5.4.3 锁降级

5.5 LockSupport工具

5.6 Condition接口

5.6.1 Await()

5.6.2 Signal()

六、并发容器

并发容器框架

6.1 ConcurrentHashMap

6.2 非阻塞队列

6.2.1 ConcurrentLinkQueue

6.3 阻塞队列

6.3.1 ArrayBlockingQueue

6.3.2 LinkedBlockingQueue

6.3.3 PriorityBlockingQueue

6.3.4 DelayQueue

6.3.5 SynchronousQueue

6.3.6 LinkedTransferQueue

6.3.7 LinkedBlockingDeque

6.4 并发List

6.4.1 CopyOnWriteArrayList和Vector

6.4.2 CopyOnWriteArraySet

七、atomic原子类

atomic 原子类

7.1 原子更新类型

7.2 原子更新数组

7.3 原子更新引用类型

7.4 原子更新字段类

八、线程池executor

executor 框架介绍

8.1 Executor框架

8.2 ThreadPoolExecutor

8.2.1 FixedThreadPool

8.2.2 SingleThreadExecutor

8.2.3 CachedThreadPool

8.3 ScheduleThreadPoolExecutor

8.3.1 ScheduledThreadPoolExecutor

8.3.2 SingleThreadScheduledExecutor

8.4 Future可获取任务结果

8.5 Runable和Callable

8.6 线程池的使用和设置

九、forkjoin 框架

forkjoin 框架