Remarque : On ne s’intéresse ici qu’à Python 3.x
La fonction recommandée pour terminer un processus Python est
sys.exit([arg])
.
Avant la terminaison, cette fonction prend notamment soin d’invoquer les éventuels traitants de terminaison enregistrés par l’application (notamment à des fins de nettoyage …), de vider les flux de sorties (affichage …).
Cependant, si le processus contient plusieurs threads, l’appel à cette fonction n’entraîne que la terminaison immédiate du thread appelant.
La fonction os.exit()
permet de déclencher la
terminaison immédiate d’un processus Python, même lorsque celui contient
plusieurs threads applicatifs. Mais il s’agit d’une terminaison brutale
(sans aucune des garanties définies ci-dessus).
Des informations concernant le GIL (Global Interpreter Lock). Voir aussi cette page.