ok risolto! la coda era effettivamente inutile... il tutto si semplifica e
di molto, grazie per i link.
il codice funzionante è:

#!python

import multiprocessing as mltp


def work((x, y)):

    return x * y


pool = mltp.Pool()

res = pool.map_async(work, zip(range(100), range(100, 200)))

results = res.get()
#---

provando l'esempio con 100000 valori il guadagno in termini di tempo c'è
effettivamente...

%timeit map(work, zip(range(100000), range(100000, 200000)))
10 loops, best of 3: 46.7 ms per loop

%timeit res = pool.map_async(work, zip(range(100000), range(100000,
200000)))
100 loops, best of 3: 9.06 ms per loop

ciao

Pietro
_______________________________________________
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python

Rispondere a