En Python pour les * nix, fait `` bloquer le thread ou le processus ?
Réponses
Trop de publicités?Elle bloque le thread. Si vous regardez dans Modules/timemodule.c dans la source Python, vous verrez que dans l’appel à `` , la partie essentielle de l’opération de sommeil est encapsulée dans un bloc Py_BEGIN_ALLOW_THREADS et Py_END_ALLOW_THREADS, permettant aux autres threads de continuer d’exécuter alors que le courant que l'on dort. Vous pouvez également le tester avec un programme python simple :
Qui sera imprimé :
Oui, d’accord avec Burly.
Le thread se bloque, mais le processus est encore en vie.
Dans une application multithread unique, cela signifie que tout est bloqué pendant que vous dormez. Dans une application multithread, seul le thread vous explicitement « sommeil » se bloque et les autres threads s’exécutent toujours dans le processus.