第1章
Qt多线程入门
为什么需要多线程?Qt中的线程基础概念、QThread类初探。
基础概念
第2章
QThread基础
创建第一个QThread子类、重写run()方法、启动与停止线程。
实操核心
第3章
线程同步基础
什么是竞态条件?QMutex的使用、QMutexLocker自动解锁。
同步互斥
第4章
信号与槽跨线程
跨线程信号槽连接机制、QueuedConnection与DirectConnection。
通信事件
第5章
QObject与线程
QObject的线程亲和性、moveToThread()方法详解。
对象生命周期
第6章
工作线程模式
Worker对象模式、将耗时操作移到工作线程。
设计模式实用
第7章
线程池QThreadPool
QRunnable与QThreadPool、并发任务管理。
并发池化
第8章
QtConcurrent框架
QtConcurrent::run()、QFuture与QFutureWatcher。
高级异步
第9章
高级同步原语
QReadWriteLock读写锁、QSemaphore信号量、QWaitCondition条件变量。
同步复杂
第10章
原子操作与无锁编程
QAtomicInteger、QAtomicPointer、CAS操作。
无锁性能
第11章
线程安全容器
QQueue、QStack、QHash的线程安全变体、QSharedData。
数据结构安全
第12章
定时器与事件循环
QTimer在多线程中的使用、事件循环深入理解。
事件循环
第13章
线程间数据传递
使用信号槽传递数据、使用QSharedMemory共享内存。
IPC通信
第14章
生产者-消费者模式
使用QWaitCondition实现、使用QSemaphore实现。
经典并发
第15章
线程安全单例模式
双重检查锁定、C++11静态局部变量方案。
设计模式单例
第16章
GUI线程与工作线程
为什么不能在子线程操作UI?invokeMethod跨线程调用。
UI安全
第17章
进度报告与取消任务
QProgressDialog与线程通信、任务取消标志位。
交互取消
第18章
线程调试技巧
Qt Creator线程调试器、打印线程ID、死锁检测。
调试工具
第19章
性能优化
线程数量选择、任务粒度控制、避免伪共享。
优化进阶
第20章
网络编程中的多线程
QTcpServer多线程处理、异步Socket与线程。
网络并发
第21章
数据库操作与线程
数据库连接池、SQLite线程安全模式。
数据库连接池
第22章
文件I/O与线程
大文件分块读取、异步文件操作。
文件异步
第23章
图像处理与线程
QImage并行处理、OpenCV与Qt线程结合。
图像并行
第24章
自定义事件与线程
QEvent子类化、postEvent与sendEvent。
事件自定义
第25章
线程本地存储
QThreadStorage、TLS原理与应用场景。
TLS存储
第26章
Qt6新特性
QThread新API、std::thread与Qt互操作。
Qt6新特性
第27章
常见陷阱与最佳实践
死锁预防、线程泄漏、异常安全。
经验避坑
第28章
实战:多线程日志系统
异步日志写入、环形缓冲区设计。
实战日志
第29章
实战:多线程下载器
断点续传、并发分片下载。
实战下载
第30章
实战:实时数据采集系统
多传感器数据采集、数据融合与展示。
实战采集