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 asvetlov
Recipients asvetlov, stefan, vstinner, yselivanov
Date 2019-01-08.01:27:38
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1546910858.5.0.924059982783.issue35635@roundup.psfhosted.org>
In-reply-to
Content
The limitation is a consequence of how Linux works.
Unix has no cross-platform API for non-blocking waiting for child process finish except handling SIGCHILD signal.

On the other hand signal handlers in Python should work in the main thread.

Your trick with a loop creation in the main thread and actual running in another thread can work, but asyncio doesn't guarantee it.
The behavior can be broken in next releases, sorry.

IIRC we discussed this scenario recently, official support for transferring a loop between threads is a too strict limitation, not all third-party implementations are ready for that.
History
Date User Action Args
2019-01-08 01:27:39asvetlovsetrecipients: + asvetlov, stefan, vstinner, yselivanov
2019-01-08 01:27:38asvetlovsetmessageid: <1546910858.5.0.924059982783.issue35635@roundup.psfhosted.org>
2019-01-08 01:27:38asvetlovlinkissue35635 messages
2019-01-08 01:27:38asvetlovcreate