Condividi tramite


funzione MPI_Mprobe

Blocco dei probe per un messaggio. Fornisce un meccanismo per ricevere il messaggio specifico corrispondente indipendentemente dalle operazioni di probe/ricezione intermedie. Il messaggio corrispondente viene de-accodato dalla coda di ricezione, offrendo all'applicazione l'opportunità di decidere come ricevere il messaggio in base alle informazioni restituite dall'operazione probe corrispondente. Il messaggio corrispondente viene quindi ricevuto usando la funzione MPI_Mrecv o MPI_Imrecv .

Sintassi

int MPIAPI MPI_Mprobe(
  _In_  int         source,
  _In_  int         tag,
  _In_  MPI_Comm    comm,
  _Out_ MPI_Message *message,
  _Out_ MPI_Status  *status
);

Parametri

  • source [in]
    Classificazione di origine o MPI_ANY_SOURCE.

  • tag [in]
    Tag del messaggio o MPI_ANY_TAG.

  • comm [in]
    Handle del comunicatore MPI.

  • messaggio [out]
    In caso di restituzione, contiene un puntatore al messaggio corrispondente.

  • status [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 in caso di esito positivo. In caso contrario, il valore restituito è un codice di errore.

In Fortran il valore restituito viene archiviato nel parametro IERROR .

Fortran

    MPI_MPROBE(SOURCE, TAG, COMM, MESSAGE, STATUS, IERROR)
          INTEGER SOURCE, TAG, COMM, MESSAGE, STATUS(MPI_STATUS_SIZE), IERROR

Commenti

Questa funzione si comporta come MPI_Improbe ad eccezione del fatto che si tratta di una chiamata di blocco che restituisce solo dopo che è stato trovato un messaggio corrispondente.

Requisiti

Prodotto

Microsoft MPI v6

Intestazione

Mpi.h; Mpif.h

Libreria

Msmpi.lib

DLL

Msmpi.dll

Vedi anche

Funzioni da punto a punto MPI

MPI_Improbe

MPI_Recv

MPI_Imrecv