Author vilnis.termanis
Recipients vilnis.termanis
Date 2010-03-01.22:20:03
SpamBayes Score 6.53205e-08
Marked as misclassified No
Message-id <1267482006.55.0.281200221208.issue8037@psf.upfronthosting.co.za>
In-reply-to
Content
If an object, which as been put() in the multiprocessing.Queue is changed immediately after the put() call then changed version may be added to the queue which I assume is not the expected behaviour:

>>> from multiprocessing import Queue
>>> q = Queue()
>>> obj = [[i for i in xrange(j * 10, (j * 10) + 10)] for j in xrange(0,10)]
>>> q.put(obj); obj[-1][-1] = None
>>> obj2 = q.get()
>>> print obj2[-1][-1]
None

Note: This also happens if the queue is called form a child process like in the attached example.
History
Date User Action Args
2010-03-01 22:20:07vilnis.termanissetrecipients: + vilnis.termanis
2010-03-01 22:20:06vilnis.termanissetmessageid: <1267482006.55.0.281200221208.issue8037@psf.upfronthosting.co.za>
2010-03-01 22:20:05vilnis.termanislinkissue8037 messages
2010-03-01 22:20:04vilnis.termaniscreate