这门课解决什么问题

日常业务开发多数是单线程思维,代码能跑就行,但一旦遇到高并发场景,比如大促时的库存扣减、消息异步消费、定时任务批量处理,往往会暴露线程死锁、内存可见性、资源竞争等问题。这门 Java 并发实战课解决的就是从单线程思维转向多线程协同的痛点,帮你理解线程生命周期、同步机制、锁的获取与释放背后的底层逻辑,而不是停留在套用工具类。它覆盖了并发基础概念、线程状态流转、锁机制实现、生产消费模型等核心场景,同时兼顾面试中常被追问的死锁排查、线程通信原理等要点。如果你写过多线程代码但总靠试错调参数,或者面试时被问线程安全就卡壳,这门课能帮你补齐这块短板。

适合什么基础与建议先看哪几块

这门资料不适合零基础转行者,默认你已经熟悉 Java 语法、面向对象、集合框架,写过简单的业务代码。如果你连 List 和 Map 都没摸过,建议先补基础再来看。对于有半年到一年开发经验、想系统梳理并发知识的人,建议先看并发基础篇,重点看线程状态、并发与同步、线程死锁这几块,把状态流转和竞争条件搞透。接着看 ReentrantLock 和生产消费模型,这两块是理解锁机制和线程协作的关键。如果你正在准备面试,可以把线程死锁、Wait 和 Notify、线程中断这些章节作为重点复习对象,因为面试官常从这些点切入追问底层实现。

学完能独立做什么与资料怎么配合练习

学完后,你应该能独立设计一个线程安全的库存扣减模块,能基于生产消费模型搭建异步任务队列,能识别代码中潜在的死锁风险并给出修复方案,而不是盲目加 synchronized。资料里有基础篇和进阶篇两部分,基础篇建议边看边跟着敲代码,尤其是开启线程的三种形式、Wait 和 Notify、ReentrantLock 这几节,自己写一遍生产消费模型,体会锁的获取和释放时机。进阶篇的内容建议结合实际项目场景练习,比如写一个简单的线程池任务调度器,或者模拟多线程读写共享计数器,观察不同同步策略下的性能差异。资料不是看完就完事的视频集,重点在于动手复现每个并发问题,自己造一个死锁场景再解开它,这样理解才扎实。


掌握JAVA并发编程技术要点,掌握JAVA并发编程面试核心要点

课程目录

*   01 JAVA并发编程基础篇/

  *   01 并发基础.mp4 06:18

  *   02 开启线程的三种形式1.mp4 07:27

  *   03 开启线程的三种形式2.mp4 10:36

  *   04 线程状态.mp4 02:33

  *   05 并发与同步.mp4 13:10

  *   06 线程死锁.mp4 02:52

  *   07 线程Join.mp4 04:24

  *   08 线程中断.mp4 05:58

  *   09 线程礼让.mp4 03:37

  *   10 Wait和Notify1.mp4 05:22

  *   11 Wait和Notify2.mp4 10:06

  *   12 ReentrantLock.mp4 15:12

  *   13 生产消费者模型1.mp4 06:16

  *   14 生产消费者模型2.mp4 11:48

*   02 JAVA并发编程进阶篇/

  *   01 CPU多级缓存.mp4 07:16

  *   02 CPU缓存一致问题.mp4 05:03

  *   03 缓存一致性协议.mp4 04:54

  *   04 Java内存模型1.mp4 04:23

  *   05 Java内存模型2.mp4 03:37

  *   06 Java内存模型3.mp4 04:52

  *   07 JavaJMM小结.mp4 04:00

  *   08 内存交互操作与规则.mp4 08:26

  *   09 并发的优势与风险.mp4 02:50

  *   10 synchronized可见性问题.mp4 04:20

  *   11 缓存一致性协议和线程同步.mp4 03:27

  *   12 类的线程安全.mp4 06:12

  *   13 线程安全的三个体现.mp4 06:29

  *   14 指令重排.mp4 08:07

  *   15 指令重排对单例模式的影响.mp4 05:40

  *   16 原子性Atomic包.mp4 02:54

  *   17 AtomicInteger操作原理.mp4 10:19

  *   18 AtomicLong1.mp4 04:30

  *   19 AtomicLong2.mp4 01:16

  *   20 LongAdder.mp4 05:13

  *   21 AtomicReference.mp4 01:25

  *   22 AtomicIntegerArray.mp4 01:30

  *   23 AtomicFieldUpdater.mp4 04:53

  *   24 CAS和ABA.mp4 07:35

  *   25 AtomicBoolean.mp4 06:04

  *   26 AtomicBoolean补充.mp4 04:34

  *   27 synchronized1.mp4 16:47

  *   28 synchronized2.mp4 09:18

  *   29 synchronized3.mp4 03:39

  *   30 synchronized4.mp4 05:13

  *   31 synchronized5.mp4 07:05

  *   32 synchronized面试点小结.mp4 04:17

  *   33 线程安全-可见性.mp4 07:35

  *   34 synchronized可见性.mp4 02:34

  *   35 volatile可见性.mp4 03:56

  *   36 volatile有序性.mp4 02:58

  *   37 线程安全-有序性.mp4 05:30

  *   38 发布安全对象.mp4 08:51

  *   39 单例对象的状态.mp4 02:30

  *   40 线程封闭.mp4 15:09

  *   41 避免访问不安全对象.mp4 04:15

  *   42 并发判断问题.mp4 01:32

  *   43 CopyOnWriteArrayList.mp4 06:51

  *   44 ConcurrentSkipListSet.mp4 07:15

  *   45 ConcurrentHashMap.mp4 03:58

  *   46 ConcurrentSkipListMap.mp4 06:12

*   03 JAVA并发编程高级篇/

  *   01 AQS介绍1.mp4 03:09

  *   02 AQS介绍2.mp4 04:16

  *   03 AQS实现思路.mp4 10:21

  *   04 AQS入队流程.mp4 10:38

  *   05 条件等待队列1.mp4 05:09

  *   06 条件等待队列2.mp4 06:52

  *   07 (选学)AwaitSignal源码流程.mp4 27:27

  *   08 ReentrantLock.mp4 10:20

  *   09 (选学)Lock和Unlock源码流程.mp4 25:46

  *   10 Semaphore.mp4 06:13

  *   11 (选学)Semaphore源码流程1.mp4 11:54

  *   12 (选学)Semaphore源码流程2.mp4 15:39

  *   13 CountDownLatch.mp4 04:38

  *   14 CyclicBarrier1.mp4 06:24

  *   15 CyclicBarrier2.mp4 04:19

  *   16 ReentrantReadWriteLock.mp4 02:10

  *   17 BlockingQueue.mp4 06:41

  *   18 ArrayBlockingQueue.mp4 04:25

  *   19 DelayQueue.mp4 09:24

  *   20 其他队列.mp4 02:10

  *   21 FutureTask1.mp4 08:49

  *   22 FutureTask2.mp4 03:57

  *   23 (选学)FutureTask源码流程1.mp4 20:50

  *   24 (选学)FutureTask源码流程2.mp4 03:35

  *   25 Fork_Join.mp4 09:21

  *   26 线程池.mp4 01:30

  *   27 线程池核心参数.mp4 07:58

  *   28 核心参数估算.mp4 06:34

  *   29 线程池的状态.mp4 03:36

  *   30 线程池重要方法.mp4 01:56

  *   31 线程池的使用1.mp4 07:38

  *   32 线程池的使用2.mp4 13:49

  *   33 线程池的使用3.mp4 02:40

  *   34 并发编程注意点.mp4 06:02

  *   35 SpringBean的线程安全.mp4 14:07

  *   36 线程死锁查看.mp4 06:04

  *   37 高频面试点1.mp4 04:56

  *   38 高频面试点2.mp4 13:49

  *   39 Hashmap死锁1.mp4 08:58

  *   40 Hashmap死锁2.mp4 01:37

  *   41 Hashmap死锁3.mp4 09:41

  *   42 并发编程总结.mp4 08:56

  *   43 并发项目演进.mp4 22:29