◐ Shell
clean mode source ↗

Message 143154 - Python tracker

mp_queue_pickle_in_main_thread.patch (against the default branch) fixes the problem by doing the pickling in Queue.put().  It is version of a patch for Issue 8037 (although I believe the behaviour complained about in Issue 8037 is not an actual bug).

The patch also has the advantage of ensuring that weakref callbacks and 
__del__ methods for objects put in the queue will not be run in the 
background thread.  (Bytes objects have trivial destructors.)  This 
potentially prevents inconsistent state caused by forking a process 
while the background thread is running -- see Issue 6721.