Objets d’événements (Windows Sockets 2)

L’introduction d’E/S qui se chevauche nécessite un mécanisme permettant aux applications d’associer sans ambiguïté les demandes d’envoi et de réception à leurs indications de saisie semi-automatique ultérieures. Dans Windows Sockets 2, il s’agit d’objets d’événements modélisés après les événements Windows. Windows objets d’événements Sockets sont des constructions assez simples qui peuvent être créées et fermées, définies et effacées, et qui ont attendu et interrogé. Leur utilitaire principal est la possibilité d’une application de bloquer et d’attendre qu’un ou plusieurs objets d’événements soient définis.

Les applications utilisent WSACreateEvent pour obtenir un handle d’objet d’événement qui peut ensuite être fourni en tant que paramètre requis aux versions qui se chevauchent des appels d’envoi et de réception (WSASendTo, WSASendTo, WSARecvFrom). L’objet événement, qui est effacé lors de la première création, est défini par les fournisseurs de transport lorsque l’opération d’E/S qui se chevauche associée s’est terminée (avec succès ou avec des erreurs). Chaque objet événement créé par WSACreateEvent doit avoir un WSACloseEvent correspondant pour le détruire.

Les objets d’événements sont également utilisés dans WSAEventSelect pour associer un ou plusieurs événements réseau FD_XXX à un objet d’événement. Ceci est décrit dans Notification asynchrone à l’aide d’objets d’événement.

Dans les environnements 32 bits, les fonctions liées aux objets d’événement, y compris WSACreateEvent, WSACloseEvent, WSASetEvent, WSAResetEvent et WSAWaitForMultipleEvents sont directement mappées aux fonctions natives correspondantes Windows, en utilisant le même nom de fonction, mais sans le préfixe WSA.