Python 3 多进程编程
2018-05-27 本文已影响0人
wangxiaoxi
本文主要介绍基于python3.5的多进程的实现
1. 创建多进程脚本实例
![](https://img.haomeiwen.com/i5947200/abb32e8947c9e953.png)
2. 验证进程之间程序之间相互独立,资源不共享
![](https://img.haomeiwen.com/i5947200/27dd9529abc28093.png)
3.共享内存实现进程间通信: Array and Value
![](https://img.haomeiwen.com/i5947200/26d501980fb74dba.png)
![](https://img.haomeiwen.com/i5947200/e11de69e070ac49c.png)
4. 共享内存实现进程间通讯: queues
![](https://img.haomeiwen.com/i5947200/79bebc716f1d9434.png)
注意:这里的queue和python的module queue不是一个概念。module queue用来处理线程并发。
5. 进程间共享资源锁Lock
当没有lock时
![](https://img.haomeiwen.com/i5947200/8b3b21fca3e90154.png)
当有lock时
![](https://img.haomeiwen.com/i5947200/59a2615a9e5c5317.png)
lock保证了共享资源的原子操作
6. 多worker processor实现并发(pool)
![](https://img.haomeiwen.com/i5947200/62356900c2325a35.png)
7. pipe 实现进程间通信
![](https://img.haomeiwen.com/i5947200/55967abb62b96c91.png)