EventLoop_Run, fonction
En-tête : #include <applibs/eventloop.h>
Exécute un EventLoop et répartit les événements en attente dans le thread d’exécution de l’appelant.
EventLoop_Run_Result EventLoop_Run(EventLoop *el, int duration_in_milliseconds,
bool process_one_event);
Paramètres
el
EventLoop à exécuter.duration_in_milliseconds
Durée d’exécution de la boucle d’événements. Si la valeur est zéro, la boucle traite un événement si l’un d’eux est prêt et s’arrête immédiatement, quelle que soit la valeur duprocess_one_event
paramètre. Si elle est supérieure à zéro, la boucle s’exécute pendant la durée spécifiée, sauf si elle est interrompue. Si elle est inférieure à zéro, la boucle continue à s’exécuter jusqu’à ce qu’elle soit interrompue. Consultez la fonction EventLoop_Stop et leprocess_one_event
paramètre pour obtenir des conditions supplémentaires.process_one_event
Indique s’il faut interrompre la boucle après le traitement du premier événement. Si la valeur est false, la boucle continue à s’exécuter pendant la durée spécifiée par leduration_in_milliseconds
paramètre ou jusqu’à ce qu’elle soit interrompue par EventLoop_Stop. Ce paramètre est ignoré siduration_in_milliseconds
a la valeur zéro.
Valeur de retour
Retourne une valeur EventLoop_Run_Result qui indique les résultats de cet appel de fonction.
Remarques
Une application peut appeler EventLoop_Run(el, -1, false)
pour passer le contrôle du thread appelant au EventLoop
.
Si l’application appelle EventLoop_Run(el, -1, true)
, la boucle bloque et attend que le premier événement soit prêt, puis elle traite l’événement et retourne.
Une application peut appeler EventLoop_Stop pour quitter EventLoop_Run
plus tôt.