– Start同步队列from multiprocessing import Process, Queuedef producer(data):for i in range(10):# 发送消息,如果 Queue 满了,则阻塞msg = fmessage {i}data.put(msg)print(fsent {msg})# 发送 None,表...
– Start
同步队列
from multiprocessing import Process, Queue
def producer(data):
for i in range(10):
# 发送消息,如果 Queue 满了,则阻塞
msg = f'message {i}'
data.put(msg)
print(f'sent {msg}')
# 发送 None,表示消息发送完毕
data.put(None)
def consumer(data):
while True:
# 接收消息,如果 Queue 没有消息,则阻塞
msg = data.get()
if msg:
print(f'received {msg}')
else:
break
if __name__ == '__main__':
# Queue 大小为 1
data = Queue(1)
produce_thread = Process(target=producer, args=(data, ))
consume_thread = Process(target=consumer, args=(data, ))
produce_thread.start()
consume_thread.start()
管道
– 更多参见:Python 精萃
– 声 明:转载请注明出处
– Last Updated on 2018-10-14
– Written by ShangBo on 2018-10-14
– End
沃梦达教程
本文标题为:Python 进程交互


猜你喜欢
- Python之路-Python中的线程与进程 2023-09-04
- python线程池ThreadPoolExecutor与进程池ProcessPoolExecutor 2023-09-04
- Python实现将DNA序列存储为tfr文件并读取流程介绍 2022-10-20
- CentOS7 安装 Python3.6 2023-09-04
- python中列表添加元素的几种方式(+、append()、ext 2022-09-02
- python中defaultdict用法实例详解 2022-10-20
- 在centos6.4下安装python3.5 2023-09-04
- Python 保存数据的方法(4种方法) 2023-09-04
- windows安装python2.7.12和pycharm2018教程 2023-09-03
- Python Pandas如何获取和修改任意位置的值(at,iat,loc,iloc) 2023-08-04