Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Führt einen nicht blockierenden Empfang für eine Nachricht aus, die von MPI_Mprobe oder MPI_Improbe abgeglichen wird.
Syntax
int MPIAPI MPI_Imrecv(
_Out_ void *buf,
_In_ int count,
_In_ MPI_Datatype datatype,
_Inout_ MPI_Message *message,
_Out_ MPI_Request *request
);
Parameter
buf [out]
Ein Zeiger auf die Adresse des Empfangspuffers.Anzahl [in]
Die Anzahl der Datentypelemente in buf.Datentyp [in]
Der MPI-Datentyp der Elemente in buf.Nachricht [ein, ausgehend]
Enthält einen Zeiger auf die Nachricht.Request [out]
Enthält bei der Rückgabe einen Zeiger auf ein MPI_REQUEST Handle, das den Kommunikationsvorgang darstellt.
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_IMRECV(BUF, COUNT, DATATYPE, MESSAGE, REQUEST, IERROR)
<type> BUF(*)
INTEGER COUNT, DATATYPE, MESSAGE, REQUEST, IERROR
Hinweise
Diese Funktion ist die nicht blockierende Variante von MPI_Mrecv und startet einen nicht blockierenden Empfang einer übereinstimmenden Nachricht. Die Vervollständigungssemantik ähnelt MPI_Irecv.
Bei der Rückkehr von dieser Funktion wird das Nachrichtenhandle auf MPI_MESSAGE_NULL festgelegt.
Wenn diese Funktion mit MPI_MESSAGE_NO_PROC als Nachrichtenargument aufgerufen wird, wird der Aufruf sofort mit einem Anforderungsobjekt zurückgegeben, das nach Abschluss ein status-Objekt ergibt, das aufQuell-MPI_PROC_NULL = , Tag = MPI_ANY_TAG und Anzahl = 0 festgelegt ist, als ob ein Empfang von MPI_PROC_NULL ausgegeben würde. Ein Aufruf dieser Funktion mit MPI_MESSAGE_NULL ist fehlerhaft.
Anforderungen
Produkt |
Microsoft MPI v6 |
Header |
Mpi.h; Mpif.h |
Bibliothek |
Msmpi.lib |
DLL |
Msmpi.dll |