1 from multiprocessing import* 2 from time import sleep 3 #定义写入的方法 4 def write(q): 5 a = ['a','b','c','d'] 6 for i in a: 7 print('开始写入的值:%s'%i) 8 q.put(i) 9 sleep(1) 10 11 def reader(q): 12 for i in range(q.qsize()): 13 print('读取到的值:%s'%q.get()) 14 sleep(1) 15 16 if __name__ == '__main__': 17 #创建队列 18 q = Manager().Queue() 19 #创建进程 20 pool = Pool(3) 21 pool.apply(write,(q,)) 22 pool.apply(reader,(q,)) 23 pool.close() 24 pool.join()
1 开始写入的值:a 2 开始写入的值:b 3 开始写入的值:c 4 开始写入的值:d 5 读取到的值:a 6 读取到的值:b 7 读取到的值:c 8 读取到的值:d