11.5. multiprocessing — 像管理线程一样管理进程
本节目标:了解管理进程的 API
multiprocessing
模块包含一组可以在多个进程间工作的 API,基于 threading
模块编写。在某些情况下,multiprocessing
是 threading
的一个替代者,用于编写需要利用多个 CPU 来规避由于 Python 的全局解释器锁带来的计算瓶颈问题的场合。
由于和线程比较相似,前面的几个例子是 threading
章节例子的微调。 multiprocessing
独有的功能放在了后面介绍。
(以下链接均为原文链接)
- multiprocessing 基础
- 可导入的目标函数
- 确定当前进程
- 守护进程
- 等待进程
- 结束进程
- 进程退出状态
- 日志
- 进程子类
- 向进程传递消息
- 进程间的信号
- 控制访问资源
- 同步操作
- 控制访问资源的并发数
- 管理共享状态
- 共享命名空间
- 进程池
- 部署 MapReduce
参考
- multiprocessing 标准库文档
threading
-- 上层线程 API- MapReduce - 维基百科 -- MapReduce 概述。
- MapReduce: 大型集群上的简化数据处理 -- Google 实验室教你 MapReduce
operator
-- 实用的内置操作符工具箱
本译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。