Opération de thread Python
1. Verrouillage global
1. Dans , l'exécution du code Python est contrôlée par la machine virtuelle Python. Dans la machine virtuelle Python, un seul thread s'exécute en même temps. Tout comme plusieurs processus exécutés dans un système à processeur unique, plusieurs programmes peuvent être stockés dans le système. mémoire, mais à tout moment, un seul programme est en cours d'exécution sur le CPU. De même, plusieurs threads peuvent être « en cours d’exécution » dans l’interpréteur Python, mais à tout moment, un seul thread est en cours d’exécution dans l’interpréteur Python.
2. L'accès à la machine virtuelle Python est contrôlé par le verrou global de l'interpréteur [GIL]. C'est ce verrou qui garantit qu'un seul thread s'exécute en même temps.
3. Dans un environnement multithread, la méthode d'exécution de la machine virtuelle Python est :
2. Module Thread
Python fournit les modules [thread] et [threading]. En programmation multithread, il est recommandé d'utiliser le module [threading] En effet :
1 Dans le module [thread], lorsque le thread principal se termine, d'autres threads ne l'ont pas été. été effacé ne terminera pas son exécution et sera déconnecté. Cependant, dans le module [threading], on peut être assuré que le processus ne se terminera pas tant que tous les sous-threads "importants" (les sous-threads importants ici font référence aux threads démons) auront fini de s'exécuter
2. Dans [threading] Le module est un module de thread plus avancé. Il fournit non seulement la classe Thread, mais fournit également un mécanisme de synchronisation des threads
module de thread
fonctions intégrées
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!