Partilhar via


função MPI_Mprobe

A bloquear sondas para uma mensagem. Fornece um mecanismo para receber a mensagem específica que foi correspondida, independentemente das operações de pesquisa/receção intervenientes. A mensagem correspondente é desativada na fila de receção, o que dá à aplicação a oportunidade de decidir como receber a mensagem com base nas informações devolvidas pela operação de pesquisa correspondente. Em seguida, a mensagem correspondente é recebida com 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

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

  • tag [in]
    Etiqueta de mensagem ou MPI_ANY_TAG.

  • comm [in]
    Identificador do comunicador MPI.

  • mensagem [fora]
    Na devolução, contém um ponteiro para a mensagem correspondente.

  • status [out]
    Na devolução, contém um ponteiro para uma estrutura de MPI_Status onde são armazenadas informações sobre a mensagem.

Valor devolvido

Devolve MPI_SUCCESS com êxito. Caso contrário, o valor devolvido é um código de erro.

Em Fortran, o valor devolvido é armazenado no parâmetro IERROR .

Fortran

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

Observações

Esta função comporta-se como MPI_Improbe , exceto que é uma chamada de bloqueio que só é devolvida depois de ter sido encontrada uma mensagem correspondente.

Requisitos

Produto

Microsoft MPI v6

Cabeçalho

Mpi.h; Mpif.h

Biblioteca

Msmpi.lib

DLL

Msmpi.dll

Ver também

Funções Ponto a Ponto do MPI

MPI_Improbe

MPI_Recv

MPI_Imrecv