在Python的`multiprocessing`库中,你可以使用`Process`类来创建并运行多个进程。如果你想要实现一个有调节的链式中介,可能需要结合队列(`Queue`)或者其他通信机制。
以下是一个简单的例子,展示了如何使用`Process`和`Queue`来实现链式处理:
```python
from multiprocessing import Process, Queue
def worker(input_queue, output_queue):
while True:
data = input_queue.get()
if data is None: # 信号:结束工作
break
# 这里进行数据处理
processed_data = data * 2
output_queue.put(processed_data)
if __name__ == '__main__':
input_queue = Queue()
output_queue = Queue()
worker1 = Process(target=worker, args=(input_queue, output_queue)))
worker2 = Process(target=worker, args=(output_queue, input_queue))) # 形成链式
worker1.start()
worker2.start()
for i in range(10):
input_queue.put(i)
# 通知工作结束
input_queue.put(None)
worker1.join()
worker2.join()
```
在这个例子中,我们创建了两个工作进程,它们通过队列进行通信。`worker`函数接收输入和输出队列,并持续从输入队列获取数据,处理后将结果放入输出队列。当输入队列收到`None`时,表示工作结束,每个工人都会停止工作并退出。
此文本由CAIE学术大模型生成,添加下方二维码,优先体验功能试用