File tree Expand file tree Collapse file tree 2 files changed +12
-1
lines changed Expand file tree Collapse file tree 2 files changed +12
-1
lines changed Original file line number Diff line number Diff line change 1
- ##Utilizing Parallel Python
1
+ ##Utilizing Parallel Python
2
+ 之前的章节,我们学习了怎么使用multiprocessing模块和ProcessPoolExecutor模块解决两个问题这章将介绍管道和如何使用Parallel Python(PP)利用多进程执行并行任务。
3
+ 本章会覆盖下面几个知识点:
4
+ * 理解进程间通信
5
+ * 学习Parallel Python(PP)
6
+ * 在SMP架构上使用PP计算斐波那契序列
Original file line number Diff line number Diff line change
1
+ IPC是一种允许多进程间通信的一种机制。
2
+ 有许多IPC的实现方式,他们依赖于不同架构的运行环境。运行在同一台机器上的进程可以由多种进程间通信方式,比如共享内存、消息队列和管道。如果多进程处于物理上分布式集群上上,我们可以使用RPC的方式。
3
+ 第五章中我们介绍了Multiprocessing和ProcessPoolExecutor模块,学习了常规的管道的用法。我们学习了共有一个父进程的各个子进程间通信方式,但是有时候我们需要在不相关的进程间传递信息(子进程不共有同一个父进程),我们会想,通过不相关进程的地址空间,是否能够在它们之间建立通信。虽然一个进程不能获取另外一个进程的地址空间,但是我们需要使用一种新的机制——命名管道。
4
+ ###探索命名管道
5
+ 对于POSIX系统,例如linux,我们可以把所有归结为文件,我们每操作一个文件,我们可以找到一个文件与之对应,我们还可以找到另外一个文件用于描述这个任务,该文件使得我们可以操控任务对应的文件。
6
+ 命名管道通过使用文件描述符(该文件描述符对应于要执行的任务,比如FIFO方式读写文件任务)的方式实现进程间IPC通信。在对信息的管理上命名管道不同于常规管道,
You can’t perform that action at this time.
0 commit comments