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 pitrou
Recipients kristjan.jonsson, paul.moore, pitrou, steve.dower, tim.golden, zach.ware
Date 2017-04-03.14:43:37
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1491230618.78.0.644794311178.issue29971@psf.upfronthosting.co.za>
In-reply-to
Content
On Windows, Lock.acquire() (and other synchronization primitives derived from it, such as queue.Queue) cannot be interrupted with Ctrl-C, which makes it difficult to interrupt a process waiting on such a primitive.

Judging by the code in Python/_thread_nt.h, it should be relatively easy to add such support for the "legacy" semaphore-based implementation (by using WaitForMultipleObjects instead of WaitForSingleObject), but it would be much hairier for the new condition variable-based implementation.

Of course, many other library calls are prone to this limitation (not being interruptible with Ctrl-C on Windows).

See https://github.com/dask/dask/pull/2144#issuecomment-290556996 for original report.
History
Date User Action Args
2017-04-03 14:43:38pitrousetrecipients: + pitrou, paul.moore, kristjan.jonsson, tim.golden, zach.ware, steve.dower
2017-04-03 14:43:38pitrousetmessageid: <1491230618.78.0.644794311178.issue29971@psf.upfronthosting.co.za>
2017-04-03 14:43:38pitroulinkissue29971 messages
2017-04-03 14:43:37pitroucreate