public class Request {
// Nonblocking communication
public Status Wait() throws MPIException {...}
public Status Test() throws MPIException {...}
public void Free() throws MPIException {...}
public boolean Is_null() {...}
public static Status Waitany(Request [] array_of_requests)
throws MPIException {...}
public static Status Testany(Request [] array_of_requests)
throws MPIException {...}
public static Status [] Waitall(Request [] array_of_requests)
throws MPIException {...}
public static Status [] Testall(Request [] array_of_requests)
throws MPIException {...}
public static Status [] Waitsome(Request [] array_of_requests)
throws MPIException {...}
public static Status [] Testsome(Request [] array_of_requests)
throws MPIException {...}
// Probe and cancel
public void Cancel() throws MPIException {...}
...
}
public class Prequest extends Request {
// Persistent communication requests
public void Start() throws MPIException {...}
public static void Startall(Prequest [] array_of_requests)
throws MPIException {...}
...
}