代码如下:
from multiprocessing import Manager, Pool
def num1():
global num
for i in range(1000):
num += 1
q.put(num, False)
q.put(None)
def num2():
global num
while True:
if not q.empty():
result = q.get()
if result is None:
break
else:
print(result)
print(1111111111111)
if name == '__main__':
num = 0
q = Manager().Queue()
p = Pool(5)
for i in range(1):
p.apply_async(num1)
for i in range(3):
p.apply_async(num2)
p.close()
p.join()
while True循环退出了,但是进程没有退出。