утечка памяти в multiprocessing.queue? - PullRequest
0 голосов
/ 03 апреля 2019

почему образец утечки памяти кода py-мультипроцессора?

Код Python очень примерный:

import multiprocessing
from time import sleep
import numpy as np

def writer_proc(q):    
    while True:  
        if not q.full():
            a = np.ones([768,768,3])
            q.put(a, block = False) 
            print q.qsize()
        else:
            sleep(1)

def reader_proc(q):

    while  True:
        if not q.empty():
            q.get(block = False)
        else:
            sleep(1)

if __name__ == "__main__":
    q = multiprocessing.Queue(2)
    writer = multiprocessing.Process(target=writer_proc, args=(q,))  
    writer.start()   
    reader_proc(q)

используйте bash shell top, память будет очень быстро увеличиваться.

...