[Python] multiprocessing queue | pipe
Remo The Last
py.remothelast a yahoo.it
Gio 21 Maggio 2015 10:35:54 CEST
ciao lista, buongiorno.Sto appresso ad un problema semplice ma che non riesco a risolvere.Nell'esempio che segue la def f, con il suo while, mi deve inviare sempre i dati aggiornati (q.put) e il q.get nel main deve ricevere sempre i dati della def. Il problema è che la def f viene eseguita una sola volta e anche se ho inserito un ciclo while i dati vengono inviati e ricevuti solo una volta mentre a me serve che i dati vengano inviati e ricevuti sempre, in quanto la def dovrà aggiornare i dati da inviare.
Anche se modifico il listato e uso una pipe, la def viene eseguita una sola volta e i dati aggiornati vengono ricevuti una sola volta
Come posso fare?
Ciao e grazie.py.Re
Listato esempio:
from multiprocessing import Process, Queue
def f(q): while True:
q.put([42, None, 'hello']) conn.close()
if __name__ == '__main__':
q = Queue()
p = Process(target=f, args=(q,))
p.start()
print q.get()
p.join()
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.python.it/pipermail/python/attachments/20150521/f41269ce/attachment.html>
Maggiori informazioni sulla lista
Python