Compartilhar via


função MPI_Mprobe

Bloquear investigações de uma mensagem. Fornece um mecanismo para receber a mensagem específica que foi correspondida independentemente das operações de investigação/recebimento intervindo. A mensagem correspondente é desativada da fila de recebimento, dando ao aplicativo a oportunidade de decidir como receber a mensagem com base nas informações retornadas pela operação de investigação correspondente. Em seguida, a mensagem correspondente é recebida usando a função MPI_Mrecv ou MPI_Imrecv .

Sintaxe

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

Parâmetros

  • source [in]
    Classificação de origem ou MPI_ANY_SOURCE.

  • tag [in]
    Marca de mensagem ou MPI_ANY_TAG.

  • comm [in]
    Identificador do comunicador de MPI.

  • mensagem [out]
    No retorno, contém um ponteiro para a mensagem correspondente.

  • status [out]
    No retorno, contém um ponteiro para uma estrutura MPI_Status em que as informações sobre a mensagem são armazenadas.

Retornar valor

Retorna MPI_SUCCESS com êxito. Caso contrário, o valor retornado será um código de erro.

No Fortran, o valor retornado é armazenado no parâmetro IERROR .

Fortran

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

Comentários

Essa função se comporta como MPI_Improbe exceto que é uma chamada de bloqueio que retorna somente depois que uma mensagem correspondente é encontrada.

Requisitos

Produto

Microsoft MPI v6

parâmetro

Mpi.h; Mpif.h

Biblioteca

Msmpi.lib

DLL

Msmpi.dll

Confira também

Funções ponto a ponto de MPI

MPI_Improbe

MPI_Recv

MPI_Imrecv