GoldenCrystalLe 22/11/2012 à 18:31
Folco > Ben je sais pas, le côté bloquant ou non bloquant, c'est juste toi qui gère ça comme tu veux.
Typiquement, une gestion d'évènements raisonnable n'est pas sensé avoir un impact dramatique sur les performances.
Si jamais, pour une raison x ou y, tu devais t'apercevoir que le traitement d'un évènement en particulier prenait trop de CPU[, soit parce qu'il y a énormément de messages reçus, soit parce que traiter un de ces messages est long, soit pour une combinaison variable de ces deux facteurs], alors tu aurais à adapter la façon dont tu gères ces messages afin que leur traitement ne soit pas bloquant vis-à-vis des autres.
Mais tout ça est au cas par cas en fonction des besoins de ton programme.
Il faut juste retenir que le traitement d'un évènement doit être le plus court possible, et que tu dois générer le moins de messages possibles. (Windows fait par exemple de l'agrégation de messages sur certains types de messages, afin de simplifier le boulot de l'application…)