J'ai une simple bibliothèque écrite en C++ dans laquelle je crée un wrapper Python pour utiliser boost.python. Certaines fonctions mettent beaucoup de temps à s'exécuter (plus de 30 secondes), et je voudrais les rendre interruptibles de sorte que lorsque je clique sur ctrl-d pour déclencher KeyboardInterrupt dans l'interpréteur python, je suis en mesure de répondre à cela en C++.Comment passer/attraper/répondre à KeyboardInterrupt de Python en C++?
Existe-t-il un moyen de le faire? Je n'ai trouvé aucune information sur les interruptions et boost.python sur boost.org ou python.org.
Si vous avez un exemple de travail minimal, il serait très utile de l'inclure. Merci. –
J'ai trouvé un exemple [ici] (http://mail.python.org/pipermail/cplusplus-sig/2010-February/015209.html), mais c'est compliqué. Comme il arrive, il utilise PyErr_CheckSignals(). –
La réponse ci-dessous, en utilisant PyErr_CheckSignals() fonctionne bien. Merci. –