Maison >développement back-end >Tutoriel Python >Pourquoi pygame.event.get() ne renvoie-t-il pas les événements dans un thread séparé ?
pygame.event.get() ne renvoie pas d'événements dans le fil de discussion
Dans le but d'optimiser la gestion des entrées utilisateur, un utilisateur a implémenté un thread pour gérer les événements d’entrée séparément de la boucle principale du jeu. Cependant, le problème survient lors de l'utilisation de pygame.event.get() dans le thread, car il ne renvoie aucun événement.
L'explication réside dans le modèle de thread utilisé par pygame. Selon sa documentation, le sous-système d'événements doit être accessible à partir du thread principal. Cela signifie que même s'il est possible de publier des événements à partir d'autres threads, la file d'attente des événements elle-même doit être gérée dans le thread principal.
Par conséquent, pour résoudre ce problème, on ne peut pas appeler pygame.event.get() en dehors le fil conducteur. Au lieu de cela, il convient d'utiliser l'une des approches suivantes :
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!