Skip to main content
RIORESULT structure

The RIORESULT structure contains data used to indicate request completion results used with the Winsock registered I/O extensions.

Syntax


typedef struct _RIORESULT {
  LONG       Status;
  ULONG      BytesTransferred;
  ULONGULONG SocketContext;
  ULONGULONG RequestContext;
} RIORESULT, *PRIORESULT;

Members

Status

The completion status of the Winsock registered I/O request.

BytesTransferred

The number of bytes sent or received in the I/O request.

SocketContext

An application-provided context specified in call to the RIOCreateRequestQueue function.

RequestContext

An application-provided context specified with the registered I/O request to the RIOReceive, RIOReceiveEx, RIOSend, and RIOSendEx functions.

Remarks

The RIORESULT structure defines the data format used to indicate request completion by the Winsock registered I/O extensions. An application requests completion indications by allocating an array of RIORESULT structures and passing the array of RIORESULT structures to the RIODequeueCompletion function along with the element count. The application need not perform any initialization of the RIORESULT structure elements before calling the RIODequeueCompletion function.

The SocketContext member of the RIORESULT structure can be used by an application to identify the RIO_CQ object or the associated application object on which the Winsock registered I/O request was issued. The RequestContext member of the RIORESULT structure can similarly be used to identify the particular Winsock registered I/O request that was completed.

The RIORESULT structure is defined in the Mswsockdef.h header file which is automatically included in the Mswsock.h header file. The Mswsockdef.h header file should never be used directly.

Requirements

Minimum supported client

Windows 8 [desktop apps only]

Minimum supported server

Windows Server 2012 [desktop apps only]

Header

Mswsockdef.h (include Mswsock.h)

See also

RIOCreateRequestQueue
RIODequeueCompletion
RIOReceive
RIOReceiveEx
RIOSend
RIOSendEx