Próbuję przyśpieszyć jedną rutynę, używając modułu Multiprocessing w Pythonie. Chcę być w stanie przeczytać kilka plików .csv przez podział pracy pomiędzy kilku rdzeni, na które mam:Jak pobrać dane wyjściowe z wieloprocesowości w Pythonie?
def csvreader(string):
from numpy import genfromtxt;
time,signal=np.genfromtxt(string, delimiter=',',unpack="true")
return time,signal
Potem wywołać tę funkcję, mówiąc:
if __name__ == '__main__':
for i in range(0,2):
p = multiprocessing.Process(target=CSVReader.csvreader, args=(string_array[i],))
p.start()
Chodzi o to, że nie przechowuje żadnych danych wyjściowych. Przeczytałem wszystkie fora online i widziałem, że może istnieć sposób na multiprocessing.queue, ale nie rozumiem tego całkiem dobrze. Czy istnieje prosta i bezpośrednia metoda?
Szukały na [wprowadzenia do dokumentacji] (https://docs.python.org/2/library/multiprocessing.html#introduction)? –
Rzeczywiście tak. Zadzwoń do mnie gęsty, ale nie byłem w stanie naprawić mojego programu z tymi informacjami. – Guillermo