WSAWaitForMultipleEvents ou WaitForMultipleObjectsEx ?
4 réponses
Marc
Dans une application multi-threadée, j'utilise WSAWaitForMultipleEvents pour
gérer les sockets de manière asynchrone.
La partie socket marche et bien, et maintenant j'ai besoin de prendre en
charge un EVENT pour indiquer à toutes les threads qu'un objet global au
process a changé.
Dans la doc de WSAWaitForMultipleEvents, il est indiqué que celui-ci repose
sur WaitForMultipleObjectsEx.
J'en viens à ma question : comment attendre un évènement de type EVENT
général en plus des évènements spécifiques aux sockets.
WSAWaitForMultipleEvents ou WaitForMultipleObjectsEx peuvent-ils gérer des
évènements mixtes sockets/autres. Si oui, pourquoi exite-t-il 2 fonctions ?
Si non, comment faire ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Dominique Vaufreydaz
Bonjour,
WSAWaitForMultipleEvents ou WaitForMultipleObjectsEx peuvent-ils gérer des évènements mixtes sockets/autres. Si oui, pourquoi exite-t-il 2 fonctions ? Si non, comment faire ?
Je dirais (conditionnel) oui pour la seconde. normalement, WaitForMultipleObject(Ex) attend qu'on objet soit signalé. L'idée étant que la notion de "signalé" depend du type de l'objet.
A verifier. Doms.
Bonjour,
WSAWaitForMultipleEvents ou WaitForMultipleObjectsEx peuvent-ils
gérer des évènements mixtes sockets/autres. Si oui, pourquoi
exite-t-il 2 fonctions ? Si non, comment faire ?
Je dirais (conditionnel) oui pour la seconde. normalement, WaitForMultipleObject(Ex)
attend qu'on objet soit signalé. L'idée étant que la notion de "signalé"
depend du type de l'objet.
WSAWaitForMultipleEvents ou WaitForMultipleObjectsEx peuvent-ils gérer des évènements mixtes sockets/autres. Si oui, pourquoi exite-t-il 2 fonctions ? Si non, comment faire ?
Je dirais (conditionnel) oui pour la seconde. normalement, WaitForMultipleObject(Ex) attend qu'on objet soit signalé. L'idée étant que la notion de "signalé" depend du type de l'objet.
A verifier. Doms.
Marc
> Je dirais (conditionnel) oui pour la seconde. normalement, WaitForMultipleObject(Ex) attend qu'on objet soit signalé. L'idée étant que la notion de "signalé" depend du type de l'objet.
Bon, en remplaçant WSAWaitForMultipleEvents par WaitForMultipleObjectsEx avec exactement les mêmes paramètres (ces 2 fonctions ont exactement le même prototype), ça fonctionne pareil au niveau sockets. Donc à priori WaitForMultipleObjectsEx serait bien la solution universelle, mais dans ce cas je ne comprends pas bien l'intérêt de WSAWaitForMultipleEvents. Un simple alias, ce qui expliquerait la remarque enigmatique dans sa doc ?
> Je dirais (conditionnel) oui pour la seconde. normalement,
WaitForMultipleObject(Ex)
attend qu'on objet soit signalé. L'idée étant que la notion de
"signalé"
depend du type de l'objet.
Bon, en remplaçant WSAWaitForMultipleEvents par WaitForMultipleObjectsEx
avec exactement les mêmes paramètres (ces 2 fonctions ont exactement le même
prototype), ça fonctionne pareil au niveau sockets. Donc à priori
WaitForMultipleObjectsEx serait bien la solution universelle, mais dans ce
cas je ne comprends pas bien l'intérêt de WSAWaitForMultipleEvents. Un
simple alias, ce qui expliquerait la remarque enigmatique dans sa doc ?
> Je dirais (conditionnel) oui pour la seconde. normalement, WaitForMultipleObject(Ex) attend qu'on objet soit signalé. L'idée étant que la notion de "signalé" depend du type de l'objet.
Bon, en remplaçant WSAWaitForMultipleEvents par WaitForMultipleObjectsEx avec exactement les mêmes paramètres (ces 2 fonctions ont exactement le même prototype), ça fonctionne pareil au niveau sockets. Donc à priori WaitForMultipleObjectsEx serait bien la solution universelle, mais dans ce cas je ne comprends pas bien l'intérêt de WSAWaitForMultipleEvents. Un simple alias, ce qui expliquerait la remarque enigmatique dans sa doc ?
Christian ASTOR
Marc wrote:
Un simple alias, ce qui expliquerait la remarque enigmatique dans sa doc ?
Oui, WSAWaitForMultipleEvents() ne fait qu'appeler WaitForMultipleObjectsEx()
Marc wrote:
Un simple alias, ce qui expliquerait la remarque enigmatique dans sa doc ?
Oui, WSAWaitForMultipleEvents() ne fait qu'appeler
WaitForMultipleObjectsEx()