Share via


structure RIO_BUF (mswsockdef.h)

La structure RIO_BUF spécifie une partie d’une mémoire tampon inscrite utilisée pour l’envoi ou la réception de données réseau avec les extensions d’E/S inscrites winsock.

Syntaxe

typedef struct _RIO_BUF {
  RIO_BUFFERID BufferId;
  ULONG        Offset;
  ULONG        Length;
} RIO_BUF, *PRIO_BUF;

Membres

BufferId

Descripteur de mémoire tampon inscrit pour une mémoire tampon d’E/S inscrite dans Winsock utilisée avec les demandes d’envoi et de réception.

Offset

Décalage, en octets, dans la mémoire tampon spécifiée par le membre BufferId . Une valeur de décalage de zéro pointe vers le début de la mémoire tampon

Length

Longueur, en octets, de la mémoire tampon à utiliser à partir du membre Offset .

Remarques

Les extensions d’E/S inscrites winsock fonctionnent souvent sur des parties de mémoires tampons inscrites, parfois appelées tranches de mémoire tampon. La structure RIO_BUF est utilisée par une application qui doit utiliser une petite quantité de mémoire inscrite pour envoyer ou recevoir des données réseau. L’application peut souvent augmenter les performances en inscrivant une mémoire tampon de grande taille, puis en utilisant de petits blocs de la mémoire tampon si nécessaire. La structure RIO_BUF peut décrire n’importe quel segment contigu de mémoire contenue dans une seule inscription de mémoire tampon.

Un pointeur vers une structure RIO_BUF est passé en tant que paramètre pData aux fonctions RIOSend, RIOSendEx, RIOReceive et RIOReceiveEx pour envoyer ou recevoir des données réseau.

Une application ne peut pas redimensionner une mémoire tampon inscrite simplement à l’aide d’une tranche de mémoire tampon avec des valeurs supérieures à la mémoire tampon d’origine qui a été inscrite à l’aide de la fonction RIORegisterBuffer .

La structure RIO_BUF est définie dans le fichier d’en-tête Mswsockdef.h qui est automatiquement inclus dans le fichier d’en-tête Mswsock.h . Le fichier d’en-tête Mswsockdef.h ne doit jamais être utilisé directement.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 8 [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2012 [applications de bureau uniquement]
En-tête mswsockdef.h (inclure Mswsock.h)

Voir aussi

RIODeregisterBuffer

RIOReceive

RIOReceiveEx

RIORegisterBuffer

RIOSend

RIOSendEx

RIO_BUFFERID