Skip to content

Conversation

ptosco
Copy link

@ptosco ptosco commented Sep 20, 2025

Manually reset interrupt event at the receiver end rather than relying on auto reset. This makes it possible for other waiting receivers to be signaled.
In particular, C Python modules running on Windows on a Jupyter Kernel can be interrupted via "Interrupt kernel" without requiring to send the "Interrupt kernel" signal twice as currently happens (see more detailed description in the sister PR #1073 on the jupyter_client repo).

@ptosco ptosco changed the title Manually reset interrupt evemt Manually reset interrupt event Sep 20, 2025
@minrk
Copy link
Member

minrk commented Oct 22, 2025

@ptosco can you confirm my understanding that this is safe and right to do regardless of the parent process behavior (i.e. without the jupyter-client PR)?

@minrk minrk added the bug label Oct 22, 2025
@minrk minrk changed the title Manually reset interrupt event Fix KeyboardInterrupt on Windows by manually resetting interrupt event Oct 22, 2025
@ptosco
Copy link
Author

ptosco commented Oct 22, 2025

@minrk Let me double-check that; I’ll get back to you by tomorrow. Thanks.

@ptosco
Copy link
Author

ptosco commented Oct 22, 2025

@minrk I can confirm this is safe regardless of the parent process behavior (i.e. without the jupyter-client PR).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants