MPI_Waitany Funktion
Schließt einen von mehreren ausstehenden Vorgängen ab.
Syntax
int MPIAPI MPI_Waitany(
int count,
_Inout_count_(count) MPI_Request *array_of_requests,
_Out_ int *index,
_Out_ MPI_Status *status
);
Parameter
count
Die Anzahl der Einträge im parameter array_of_requests .array_of_requests
Ein Array von MPI_Request Handles ausstehender Vorgänge.Index [out]
Ein Zeiger auf eine ganze Zahl, der den Index im array_of_requests Parameter des abgeschlossenen Vorgangs angibt. Das Array wird von 0 in C und von 1 in Fortran indiziert.status [out]
Ein Zeiger auf ein MPI_Status-Objekt , das den abgeschlossenen Vorgang beschreibt.
Rückgabewert
Gibt MPI_SUCCESS nach Erfolg zurück. Andernfalls ist der Rückgabewert ein Fehlercode.
In Fortran wird der Rückgabewert im IERROR-Parameter gespeichert.
Fortran
MPI_WAITANY(COUNT, ARRAY_OF_REQUESTS, INDEX, STATUS, IERROR)
INTEGER COUNT, ARRAY_OF_REQUESTS, INDEX, STATUS(MPI_STATUS_SIZE), IERROR
Hinweise
Diese Funktion ist ein nicht lokaler Vorgang. Der erfolgreiche Abschluss hängt möglicherweise von Abgleichsvorgängen bei anderen Prozessen ab.
Diese Funktion gibt zurück, wenn einer der Vorgänge abgeschlossen ist, die aktiven Anforderungen im array_of_requests-Parameter zugeordnet sind. Wenn mehr als ein ausstehender Vorgang abgeschlossen ist, wird einer willkürlich ausgewählt. Wenn der abgeschlossene Vorgang ein persistenter Kommunikationsvorgang ist, wird die persistente Anforderung als inaktiv markiert. Ein nichtpersistenter Vorgang wird zugeordnet, und der entsprechende Eintrag im parameter array_of_requests wird auf MPI_REQUEST_NULL festgelegt.
Einträge im array_of_requests-Parameter können MPI_REQUEST_NULL oder ein Handle für eine inaktive persistente Kommunikationsanforderung sein. Wenn der Count-Parameter 0 ist oder alle Einträge in array_of_requestsMPI_REQUEST_NULL oder inaktive persistente Kommunikationsanforderungen sind, wird die Funktion sofort zurückgegeben, wobei der Indexparameter auf MPI_UNDEFINED und eine leere status festgelegt ist.
Anforderungen
Produkt |
HPC Pack 2012 MS-MPI Redistributable Package, HPC Pack 2008 R2 MS-MPI Redistributable Package, HPC Pack 2008 MS-MPI Redistributable Package oder HPC Pack 2008 Client Utilities |
Header |
Mpi.h; Mpif.h |
Bibliothek |
Msmpi.lib |
DLL |
Msmpi.dll |