から返された結果をスキップしたいと思いmap_async
ます。それらは記憶の中で成長していますが、私はそれらを必要としません。
ここにいくつかのコードがあります:
def processLine(line):
#process something
print "result"
pool = Pool(processes = 8)
for line in sys.stdin:
lines.append(line)
if len(lines) >= 100000:
pool.map_async(processLine, lines, 2000)
pool.close()
pool.join()
数億行のファイルを処理する必要がある場合、python プロセスはメモリ内で数ギガバイトまで増加します。どうすれば解決できますか?
ご協力いただきありがとうございます :)