Skip to content

第七章 并发与并行

52 用 subprocess 管理子进程

要点

53 可以用线程执行阻塞式 I/O,但不要用它做并行计算

要点

54 利用 Lock 防止多个线程争用同一份数据

要点

55 用 Queue 来协调各线程之间的工作进度

要点

56 学会判断什么场合必须做并发

要点

57 不要在每次 fan-out 时都新建一批 Thread 实例

要点

58 学会正确地重构代码,以便用 Queue 做并发

要点

59 如果必须用线程做并发,那就考虑通过 ThreadPoolExecutor 实现

要点

60 用协程实现高并发的 I/O

要点

61 学会用 asyncio 改写那些通过线程实现的 I/O

要点

62 结合线程与协程,将代码顺利迁移到 asyncio

要点

63 让 asyncio 的事件循环保持畅通,以便进一步提升程序的响应能力

要点

64 考虑用 concurrent.futures 实现真正的并行计算

要点

本章小结

总结