Java JUC (java.util.concurrent) 学习路线建议

学习 Java 并发工具包 (JUC) 的学习路线:

1. 基础准备

  • 掌握 Java 基础:特别是多线程基础(Thread, Runnable)
  • 理解并发基本概念:线程安全、竞态条件、死锁、活锁等

2. 核心组件学习顺序

第一阶段:基础并发工具

  • Atomic 包:原子变量类
    • AtomicInteger, AtomicLong, AtomicBoolean
    • AtomicReference, AtomicStampedReference
  • 基本锁机制
    • synchronized 关键字复习
    • ReentrantLock 和 Condition

第二阶段:并发集合

  • ConcurrentHashMap:高并发 Map 实现
  • CopyOnWriteArrayList:读多写少的 List 实现
  • BlockingQueue 系列
    • ArrayBlockingQueue
    • LinkedBlockingQueue
    • PriorityBlockingQueue
    • SynchronousQueue
    • DelayQueue

第三阶段:高级同步工具

  • CountDownLatch:一次性栅栏
  • CyclicBarrier:可重复使用的栅栏
  • Semaphore:信号量控制
  • Exchanger:线程间交换数据

第四阶段:执行框架

  • Executor 框架
    • ThreadPoolExecutor
    • ScheduledThreadPoolExecutor
    • Executors 工厂类
  • Future 和 Callable
  • CompletableFuture (Java 8+)

第五阶段:高级主题

  • Fork/Join 框架
  • Phaser (Java 7+)
  • StampedLock (Java 8+)

系列文章

第一阶段:基础并发工具

  1. 《JUC学习笔记-基础并发工具:Atomic包与CAS》
  2. 《JUC学习笔记-显式锁:ReentrantLock详解》

第二阶段:并发集合

  1. 《JUC学习笔记-并发集合:ConcurrentHashMap解析》
  2. 《JUC学习笔记-阻塞队列:BlockingQueue核心实现》

第三阶段:高级同步工具

  1. 《JUC学习笔记-线程协作:CountDownLatch与CyclicBarrier》
  2. 《JUC学习笔记-资源控制:Semaphore应用》

第四阶段:执行框架

  1. 《JUC学习笔记-线程池:Executor框架核心》
  2. 《JUC学习笔记-异步编程:Future与Callable》
  3. 《JUC学习笔记-增强Future:CompletableFuture实战》

第五阶段:高级主题

  1. 《JUC学习笔记-分治任务:Fork/Join框架》
  2. 《JUC学习笔记-锁优化:StampedLock详解》

YOLO