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.

Title: asyncio should handle keyboard interrupt while the event loop is running
Type: behavior Stage: resolved
Components: asyncio Versions: Python 3.10
Status: closed Resolution: duplicate
Dependencies: Superseder: Handle KeyboardInterrupt in asyncio
View: 39622
Assigned To: Nosy List: asvetlov, gvanrossum, njs, paul.moore, scaramanga, yselivanov
Priority: normal Keywords:

Created on 2020-12-19 11:26 by paul.moore, last changed 2022-04-11 14:59 by admin. This issue is now closed.

Messages (2)
msg383370 - (view) Author: Paul Moore (paul.moore) * (Python committer) Date: 2020-12-19 11:26
See the comment on Discourse here: (and the thread leading up to this comment).

In the thread, @njs states that if the user hits Ctrl-C while the asyncio event loop is running, it's possible for internal asyncio data structures to end up in an inconsistent state. If that's the case, then this would make asyncio-based code unreliable in real-world use.

I don't have a way to reproduce this - from the Discourse thread, I had assumed that ctrl-C was safe to use on an asyncio-based program, but was told otherwise, and I can't find anything definitive either way.

At a minimum, the asyncio documentation should confirm that it is exception-safe (specifically against Ctrl-C, but in general I'd assume that asyncio is safe in the face of uncaught exceptions in user-written async code).
msg415416 - (view) Author: Andrew Svetlov (asvetlov) * (Python committer) Date: 2022-03-17 15:10
Duplicate for #39622
Date User Action Args
2022-04-11 14:59:39adminsetgithub: 86849
2022-03-17 15:10:08asvetlovsetstatus: open -> closed
superseder: Handle KeyboardInterrupt in asyncio
messages: + msg415416

resolution: duplicate
stage: resolved
2021-02-08 13:10:38scaramangasetnosy: + scaramanga
2020-12-19 16:57:49gvanrossumsetnosy: + gvanrossum
2020-12-19 11:27:02paul.mooresetnosy: + njs
2020-12-19 11:26:28paul.moorecreate