Oui, le GC appelle le __del__
Cleanup Hook du générateur, qui à son tour soulève un GeneratorExit
dans la fonction du générateur pour quitter le générateur (en appelant generator.close()
).
Cela signifie le gestionnaire de contexte __exit__
Le crochet sera appelé chaque fois qu'une fonction de générateur est effacée de la mémoire.
Vous pouvez d'abord fermer le générateur manuellement, avec generator.close()
:
b.close()