funzione MPI_Mrecv
Esegue una ricezione di blocco per un messaggio corrispondente a MPI_Mprobe o MPI_Improbe.
Sintassi
int MPIAPI MPI_Mrecv(
_Out_ void *buf,
_In_ int count,
_In_ MPI_Datatype datatype,
_Inout_ MPI_Message *message,
_Out_ MPI_Status *status
);
Parametri
buf [out]
Puntatore all'indirizzo del buffer di ricezione.conteggio [in]
Numero di elementi del tipo di dati in buf.datatype [in]
Tipo di dati MPI degli elementi nella matrice di buffer.messaggio [in, out]
Contiene un puntatore al messaggio.stato [out]
In caso di restituzione, contiene un puntatore a una struttura MPI_Status in cui vengono archiviate le informazioni sul messaggio.
Valore restituito
Restituisce MPI_SUCCESS sull'esito positivo. In caso contrario, il valore restituito è un codice di errore.
In Fortran il valore restituito viene archiviato nel parametro IERROR .
Fortran
MPI_MRECV(BUF, COUNT, DATATYPE, MESSAGE, STATUS, IERROR)
<type> BUF(*)
INTEGER COUNT, DATATYPE, MESSAGE, STATUS(MPI_STATUS_SIZE), IERROR
Commenti
Questa funzione riceve un messaggio corrispondente a un'operazione probe corrispondente. Il buffer di ricezione è costituito dall'archiviazione contenente i conteggi consecutivi degli elementi del tipo specificato dal tipo di dati, a partire dall'indirizzo buf. La lunghezza del messaggio ricevuto deve essere minore o uguale alla lunghezza del buffer di ricezione. Si verifica un errore di overflow se tutti i dati in ingresso non si adattano, senza troncamento, nel buffer di ricezione.
Se il messaggio è più breve del buffer di ricezione, vengono modificate solo le posizioni corrispondenti al messaggio (più breve).
In caso di ritorno da questa funzione, l'handle dei messaggi è impostato su MPI_MESSAGE_NULL. Tutti gli errori che si verificano durante l'esecuzione di questa operazione vengono gestiti in base al gestore degli errori impostato per il comunicatore usato nella chiamata probe corrispondente che ha generato l'handle dei messaggi
Requisiti
Prodotto |
Microsoft MPI v6 |
Intestazione |
Mpi.h; Mpif.h |
Libreria |
Msmpi.lib |
DLL |
Msmpi.dll |