多线程编程(基于Linux)
多线程是程序并发执行的一种经典的形式;所谓并发执行,就是同时处理多个任务,而不是处理完一个,再处理另一个,这样能够充分利用 CPU 资源,减少等待时间。
很多程序都是并发执行的,尤其是服务器上的后台程序;可以说,没有并发就不存在互联网。
多线程是每个后台程序员都需要了解的常识,也是笔试面试重点关注的内容。
本教程基于 Linux 系统,讲解了线程的基本概念和常见用法,并实现了一个简单的聊天系统(附带源码和讲解),让大家学以致用。
很多程序都是并发执行的,尤其是服务器上的后台程序;可以说,没有并发就不存在互联网。
多线程是每个后台程序员都需要了解的常识,也是笔试面试重点关注的内容。
本教程基于 Linux 系统,讲解了线程的基本概念和常见用法,并实现了一个简单的聊天系统(附带源码和讲解),让大家学以致用。
GCC 是 Linux 下的常用编译器,阅读本教程需要具备少量的 GCC 知识。
关于本教程
- 教程目录:
- 1. 线程是什么
- 2. POSIX pthread线程库详解
- 3. 第一个多线程程序
- 4. 创建线程
- 5. 终止线程执行(3种方法)
- 6. 获取线程函数的返回值
- 7. 终止线程执行,千万别踩这个坑!
- 8. 线程状态和生命周期详解
- 9. 线程局部存储(TLS)详解
- 10. 线程同步机制
- 11. 互斥锁实现线程同步
- 12. 信号量实现线程同步
- 13. 条件变量实现线程同步
- 14. 读写锁实现线程同步
- 15. 如何避免线程发生死锁?
- 16. 线程属性有哪些,如何自定义线程属性?
- 17. C++11多线程编程详解
- 18. 将Linux多线程程序移植到Windows
- 19. 多线程实现聊天系统
- 20. 手撕线程池(超级肝)