Python并发编程(多线程和多进程)

相比单线程的编程,多线程的程序可包含多个顺序执行流,这些顺序执行流之间互不干扰。也可以这样理解,单线程的程序如同只雇佣一个服务员的餐厅,他必须做完一件事情后才可以做下一件事情;而多线程的程序则如同雇佣多个服务员的餐厅,他们可以同时做多件事情。

Python 语言提供了非常优秀的多线程支持,程序可以通过非常简单的方式来启动多线程。

本章将会详细介绍 Python 多线程编程的相关知识,包括创建、启动线程,控制线程,以及多线程的同步操作,并会介绍如何利用 Python 内建支持的线程池来提高多线程的性能。

本章内容:
1. Python进程和线程(包含两者区别)
2. Python创建线程(2种方式)详解
3. Python线程的生命周期(新建、就绪、运行、阻塞和死亡)
4. Python Thread join()用法详解
5. Python守护线程及作用(包含2种创建方式)
6. Python sleep()函数用法:线程睡眠
7. Python互斥锁(Lock):解决多线程安全问题
8. 什么是死锁,如何避免死锁(4种方法)
9. Python condition实现线程通信(详解版)
10. Python Queue队列实现线程通信
11. Python Event实现线程通信
12. Python线程池及其原理和使用(超级详细)
13. Python threading Local()函数用法:返回线程局部变量
14. Python Timer定时器:控制函数在特定时间执行
15. Python schedule任务调度及其用法
16. Python os.fork()方法:创建新进程
17. Python Process创建进程(2种方法)详解
18. Python设置进程启动的3种方式
19. 多进程编程和多线程编程优缺点
20. Python使用进程池管理进程
21. Python进程间通信的2种实现方法(Queue和Pipe)
22. Python Futures并发编程详解
23. Python Asyncio并发编程详解
24. Python GIL全局解释器锁详解(深度剖析)
25. 深度解析Python垃圾回收机制(超级详细)