INDCompletionQueue::GetResults Method

Retrieves the requested completion results from the completion queue.


SIZE_T GetResults(
  [in, out]  ND_RESULT *pResults[],
  [in]       SIZE_T nResults


  • pResults [in, out]
    An array of pointers to ND_RESULT structures.

  • nResults [in]
    The number of elements in the pResults array.

Return Value

Returns the number of entries filled in the pResults array.


You need to call this method until there are no further completions in the completion queue. Use the return value to determine the number of returned results. The method fills in the entries in the array with the addresses of the ND_RESULT structures that you passed when issuing the requests. The ND_RESULT structure is updated with the status and byte count.

The provider is responsible for tracking the input ND_RESULT structure when the request is issued and returning that ND_RESULT when the operation completes.

Within a single endpoint, outbound requests (for example, Send, SendAndInvalidate, Read, Write, Bind, and Invalidate) and inbound requests (for example, Receive requests) complete in the order they were issued. There is no ordering between endpoints, so if a request is issued to endpoint A before a request is issued to endpoint B, it does not imply that the request for endpoint A will complete before the request for endpoint B.



Microsoft Message Passing Interface (MS-MPI)



See Also




Send comments about this topic to Microsoft

Build date: 7/2/2010