This call is useful for accessing the information associated with a request, without freeing the request (in case the user is expected to access it later). It allows one to layer libraries more conveniently, since multiple layers of software may access the same completed request and extract from it the status information.
MPI_REQUEST_GET_STATUS( request, flag, status ) | |
IN request | request (handle) |
OUT flag | boolean flag, same as from MPI_TEST (logical) |
OUT status | MPI_STATUS object if flag is true (Status) |
int MPI_Request_get_status(MPI_Request request, int *flag, MPI_Status *status)
MPI_REQUEST_GET_STATUS( REQUEST, FLAG, STATUS, IERROR)
INTEGER REQUEST, STATUS(MPI_STATUS_SIZE), IERROR
LOGICAL FLAG
{ bool MPI::Request::Get_status(MPI::Status& status) const (binding deprecated, see Section Deprecated since MPI-2.2
) }
Sets flag=true if the operation is complete, and, if so, returns in
status the request status. However, unlike test or wait, it does not
deallocate or inactivate the request; a subsequent call to test, wait or free
should be executed with that request. It sets flag=false if the
operation is not complete.
One is allowed to call MPI_REQUEST_GET_STATUS with a null or inactive
request argument. In such a case the operation returns with flag=true and empty status.
{ bool MPI::Request::Get_status() const (binding deprecated, see Section Deprecated since MPI-2.2
) }
Up: Nonblocking Communication
Next: Probe and Cancel
Previous: Multiple Completions
Return to MPI-2.2 Standard Index
Return to MPI Forum Home Page
(Unofficial) MPI-2.2 of September 4, 2009
HTML Generated on September 10, 2009