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 njs
Recipients njs, vstinner
Date 2017-05-17.05:43:27
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1494999807.92.0.395145161894.issue30038@psf.upfronthosting.co.za>
In-reply-to
Content
> While I suggest you to *not* use an event loop (wakeup fd pipe/socket handle with select) and signal.signal(), you are true that there is a race condition if you use select() with signal.signal() so I merged your change.

Unfortunately this is the only 100% reliable way to do signal handling with an event loop so I guess you are unlikely to convince any of the projects that use it this way to change their minds :-)

> Do you consider that it's worth it to backport the change to 3.5 and 3.6?

I guess it'd be nice? At least for 3.6? I just had yet another random PR fail its tests due to this bug -- it's turning out to be quite difficult to make my tests reliable :-/. (BTW do you happen to know any tricks to force CPython to do an immediate PyErr_CheckSignals on Windows?)
History
Date User Action Args
2017-05-17 05:43:27njssetrecipients: + njs, vstinner
2017-05-17 05:43:27njssetmessageid: <1494999807.92.0.395145161894.issue30038@psf.upfronthosting.co.za>
2017-05-17 05:43:27njslinkissue30038 messages
2017-05-17 05:43:27njscreate