Рассмотрим очень простой код:
#!/usr/bin/python
from multiprocessing import Pool
import random
def f(x):
return x*x
def sampleiter(n):
num = 0
while num < n:
rand = random.random()
yield rand
num += 1
if __name__ == '__main__':
pool = Pool(processes=4) # start 4 worker processes
for item in pool.imap_unordered(f, sampleiter(100000000000000), 20):
print item
pool.close
Во время выполнения терминал, утечка памяти Python.
Что может быть не так?