人工精选C++多线程编程视频教程(C++11多线程并发)
先说这门课解决什么问题 后台服务、音视频处理、量化交易等场景里,单线程扛不住高并发,多线程写不好又会频繁死锁、数据竞争。这门课聚焦的正是 C++ 多线程并发编程,解决的是“怎么让多个线程安全地协作,而不是互相踩踏”的问题。它覆盖了传统操作系统的同步原语和 C++11 引入的 thread 库,从基础
会员 · 按档位
游客按标价购买,不享受上表折扣。
支付成功后自动发放网盘链接,链接失效可找客服免费补
先说这门课解决什么问题
后台服务、音视频处理、量化交易等场景里,单线程扛不住高并发,多线程写不好又会频繁死锁、数据竞争。这门课聚焦的正是 C++ 多线程并发编程,解决的是“怎么让多个线程安全地协作,而不是互相踩踏”的问题。它覆盖了传统操作系统的同步原语和 C++11 引入的 thread 库,从基础的线程创建、临界区保护,到死锁排查、信号量、互斥量、事件、PV 操作,再到线程本地存储和线程间消息通讯。如果你平时写 C++ 只停留在单线程跑逻辑,遇到并发需求就抓瞎,或者看别人代码里的锁不知道为什么那么加,这门课能把这块拼图补上。它不教你网络编程框架,也不教你业务架构,就是死磕并发底层原理和标准库用法。
适合什么基础,建议先看哪几块
这门课默认你已经有 C++ 基础语法底子,至少能独立写带类的程序,懂指针和引用。如果你连构造析构都不熟,先补语法再看。资料本身是按“概念引入-API 拆解-场景模拟-同步原语-C++11 新标准”的顺序排的,但作为编辑我建议你别从头按顺序啃。先看第一节多线程概念和模拟火车站售票那节,建立“多线程同时改一个变量会出事”的直观感受;然后直接跳到死锁那一节,看看典型的死锁代码长什么样;接着回头细看临界区、互斥量、信号量这几个同步原语,它们是整门课的核心;最后再看 C++11 thread 类和后续内容。这样比线性看更容易抓住重点,也不会在前面的 API 罗列环节磨光耐心。
学完能独立做什么,资料怎么配合练习
学完之后,你应该能独立写出一个多线程并发安全的程序,比如多线程操作同一个队列或容器不崩、多线程卖票不超卖、用条件变量和事件做线程间消息通信、排查并修复简单的死锁。资料里有不少代码示例,光看视频不动手等于没学。建议的配合方式是:每看完一个同步原语的章节,暂停视频,自己开个 IDE 把示例代码敲一遍,然后故意改坏它——比如去掉某个锁、把锁的粒度调大、故意制造嵌套加锁——看程序会不会崩、会不会死锁、会不会输出错乱。这种“破坏性测试”比照抄更能让你理解每个原语到底在防什么。另外,C++11 之前的部分讲的是操作系统层面的同步概念,C++11 之后的部分讲的是标准库封装,两边对照着看,你会更清楚为什么 C++11 要引入 std::thread 和 std::mutex,它们和原生 API 的关系是什么。整门课的练习量不算大,但每一节都值得自己复现一遍代码,别只过眼睛。
课程目录
课程目录27 集
- 1 什么是多线程? (12:55).mp4
- 2 多线程API详解(一) (30:15).mp4
- 3 多线程API详解(二) (43:42).mp4
- 4 多线程API详解(三) (16:05).mp4
- 5 多线程模拟火车站售票 (16:21).mp4
- 6 多线程的同步和互斥 (05:05).mp4
- 7 多线程同步-临界区CriticalSection (19:37).mp4
- 8 多线程同步-线程死锁 (19:02).mp4
- 9 多线程同步-信号量Semaphore (42:32).mp4
- 10 多线程同步-互斥量Mutex (20:21).mp4
- 11 多线程同步-事件Event (22:46).mp4
- 12 多线程同步-PV操作 (42:05).mp4
- 13 多线程同步总结 (08:52).mp4
- 14 线程本地存储(TLS) (23:48).mp4
- 15 多线程间消息通讯 (28:22).mp4
- 16 C++11多线程简介 (04:09).mp4
- 17 线程thread类 (14:10).mp4
- 18 this_thread命名空间 (16:40).mp4
- 19 原子atomic类、atomic_flag类 (25:09).mp4
- 20 互斥mutex类、recursive_mutex类等 (18:20).mp4
- 21 锁管理lock_guard类 (14:56).mp4
- 22 锁管理unique_lock类 (09:20).mp4
- 23 条件变量conditon_variable类 (15:29).mp4
- 24 future类 (13:04).mp4
- 25 promise类 (14:29).mp4
- 26 packaged_task类 (09:28).mp4
- 27 future、promise、packaged_task等 (15:54).mp4





