Quel est le processus de planification des coroutines Python ?

WBOY
Libérer: 2023-05-12 11:40:17
avant
1510 Les gens l'ont consulté

1. L'appel asyncRun peut placer la coroutine dans la file d'attente des événements. La boucle est l'entrée de la boucle d'événements (également appelée planificateur). L'appel de boucle confiera le contrôle du thread au planificateur de coroutine.

2. Le planificateur extraira en continu les coroutines ou les fonctions ordinaires de la file d'attente des événements à l'avenir, puis les exécutera et les planifiera.

Pendant le processus de planification et d'exécution, ces événements peuvent générer davantage d'événements, ils continueront donc à s'exécuter.

Exemple

from queue import Queue
 
 
class __EventQueue:
    def __init__(self) -> None:
        self.__eventQueue = Queue()
 
    def pushCallback(self, fn):
        self.__eventQueue.put(fn, block=True)
 
    def getCallback(self):
        return self.__eventQueue.get(block=True)
 
eventQueue = __EventQueue()
Copier après la connexion

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!

Étiquettes associées:
source:yisu.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal