VIP20
本课程属于:003-C语言系统编程 编程基础与工程化 · 共 20 门相关课程,组合学习更完整。
查看所属VIP全部课程 →
← 返回所属目录 咨询 / 购买

多线程编程与同步机制实战

📚 共计 30 章节
01
线程基础与概念
进程与线程区别 · 生命周期 · 上下文切换 · Python/C++/Java线程模型对比
入门核心理论
02
线程的创建与启动
继承Thread · Runnable · Callable/Future · Daemon属性
实战多方式
03
线程状态与调度
6种状态 · 优先级 · 调度算法 · NEW→TERMINATED
状态机调度
04
线程安全问题
原子性 · 可见性 · 有序性 · JMM内存模型简介
核心JMM
05
synchronized关键字
同步代码块/方法 · 锁升级 · 锁粗化与消除
重量级锁优化
06
Lock与ReentrantLock
Lock对比synchronized · 可重入 · 公平/非公平 · lockInterruptibly
API可中断
07
读写锁ReadWriteLock
读写分离 · 锁降级 · 缓存场景实战
并发读多写少
08
Condition条件变量
await/signal · 生产者消费者 · 有界队列 · 与wait/notify对比
等待通知队列
09
volatile关键字
可见性 · 禁止重排序 · 单例双重检查 · 与synchronized区别
轻量级可见性
10
原子类Atomic
AtomicInteger · CAS原理 · ABA问题 · AtomicStampedReference
无锁CAS
11
线程池原理
核心参数 · 拒绝策略 · ThreadPoolExecutor源码分析
核心池化
12
Executors工厂类
newFixedThreadPool · newCached · 阿里规约为什么禁止
工厂避坑
13
Fork/Join框架
工作窃取 · RecursiveTask · 分治求和案例
分治窃取
14
CompletableFuture
异步编程 · supplyAsync · thenCombine · 异常处理
异步编排
15
ThreadLocal
原理 · 内存泄漏 · InheritableThreadLocal · 上下文传递
线程封闭泄漏
16
CountDownLatch
门闩机制 · 主线程等待 · 并行汇总 · 与join区别
闭锁协调
17
CyclicBarrier
循环屏障 · 可重用 · 超时 · 多阶段任务协调
屏障同步
18
Semaphore
信号量 · 限流 · acquire/release · 数据库连接池模拟
限流计数
19
Exchanger
线程间数据交换 · 两两配对 · 超时 · 遗传算法配对
交换配对
20
Phaser
阶段器 · 动态注册 · onAdvance · 替代CyclicBarrier
阶段灵活
21
阻塞队列BlockingQueue
Array/Linked/Priority/Delay/SynchronousQueue
队列阻塞
22
并发容器
ConcurrentHashMap · CopyOnWriteArrayList · 跳表
容器安全
23
锁优化技术
自旋锁 · 自适应 · 锁粗化 · 逃逸分析
性能JVM
24
死锁与活锁
四个必要条件 · 检测预防 · 银行家算法 · 饥饿
死锁避免
25
AQS抽象队列同步器
CLH变体 · state · 独占/共享 · 自定义同步器
框架核心
26
内存模型与happens-before
JMM内存屏障 · happens-before规则 · final语义
JMM重排序
27
并发编程设计模式
不可变对象 · 保护性暂停 · 两阶段终止 · Balking
模式实战
28
性能测试与调优
JMH微基准 · 线程数公式 · 上下文监控 · 锁竞争分析
调优JMH
29
常见并发陷阱
HashMap死循环 · SimpleDateFormat不安全 · DCL问题
避坑经典
30
实战项目:高并发秒杀
秒杀系统 · 多线程日志 · 并行爬虫 · 多阶段流水线
项目综合