您的位置:首页 > 编程语言 > Python开发

python中多进程的一般建议

2015-08-30 23:13 411 查看
multiprocessing模块是python库中最高级和功能最强大的模块之一。记住下面这些一般性技巧,可以更好地掌握这个模块。

1 在构建较大型的应用程序之前,仔细阅读在线文档。

2 确保进程间传递的所有的数据都能够序列化

3 避免使用共享数据,尽可能使用消息传递和队列。使用消息传递时,不必过于担心同步、锁定和其他问题。当进程的数量增长时,它往往还能提供更好的扩展。

4 在必须运行在单独进程中的函数内部,不要使用全局变量而应显示的传递参数。

5 尽量不要在同一个程序中混合使用线程和多线程处理,除非需要大幅度提高任务的安全性(或根据检查代码的角色降低安全性)。

6 特别要注意关闭进程的方式。一般而言,需要显示的关闭进程,并使用一种定义良好的终止模式,而不要仅仅依赖于垃圾收集或者被迫使用terminate()操作强制终止子进程。

7 管理器和代理的使用与分布式计算中的多个概念密切相关

8 multiprocessing模块源自于名为pyprocessing的第三方库。搜索有关库的使用技巧和信息,对你有很大的帮助

9 尽管模块可以在Windows上,但还是应该仔细阅读官方文档中的各种微妙细节。例如 要在Windows上启动一个新进程。多进程处理模块实现了它自己的UNIX fork()函数的克隆版本,其中将通过管道把进程状态赋值给子进程。一般而言,此模块更加适用于UNIX系统。

10 最重要的一点是:尽量让事情变得简单。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: