This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author pajs@fodder.org.uk
Recipients pajs@fodder.org.uk
Date 2009-10-14.12:14:49
SpamBayes Score 3.388419e-10
Marked as misclassified No
Message-id <1255522492.52.0.0352108851469.issue7123@psf.upfronthosting.co.za>
In-reply-to
Content
I have an example code that works fine on Python 2.6.3, but when run in
Python 3.1.1 - after a very short period of time, will go wrong.

Summary:

We have a queue, and when the queue has something in it (a list), we
start a thread to deal with that entry.

The thread then runs a Process for every entry in the list we popped off
the queue. The Process target takes a Pipe, and it sends "True" back
down the pipe, and then exits. However, this Process never goes defunct,
and thus the Thread that started the Process never reaps it. When doing
a truss on the Process, it sits there in:

lwp_park(0x00000000, 0)         (sleeping...)
History
Date User Action Args
2009-10-14 12:14:52pajs@fodder.org.uksetrecipients: + pajs@fodder.org.uk
2009-10-14 12:14:52pajs@fodder.org.uksetmessageid: <1255522492.52.0.0352108851469.issue7123@psf.upfronthosting.co.za>
2009-10-14 12:14:51pajs@fodder.org.uklinkissue7123 messages
2009-10-14 12:14:51pajs@fodder.org.ukcreate