Sdílet prostřednictvím


MPI_Improbe funkce

Sondy pro zprávu neblokující způsobem. Poskytuje mechanismus pro příjem konkrétní zprávy, která byla spárována bez ohledu na operace sondy/příjmu. Odpovídající zpráva se zruší ve frontě příjmu, což aplikaci umožní rozhodnout se, jak zprávu přijmout, na základě informací vrácených neblokující odpovídající operací sondy. Odpovídající zpráva se pak obdrží pomocí funkce MPI_Mrecv nebo MPI_Imrecv .

Syntaxe

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

Parametry

  • source [v]
    Pořadí zdroje nebo MPI_ANY_SOURCE.

  • tag [in]
    Značka zprávy nebo MPI_ANY_TAG.

  • comm [in]
    Popisovač komunikátoru MPI.

  • flag [out]
    Při návratu obsahuje ukazatel na celé číslo, které označuje, jestli se zadaný zdroj, značka a čárka shodují. Nenulová hodnota označuje, že parametry jsou shodné.

  • zpráva [out]
    Při návratu obsahuje ukazatel na odpovídající zprávu.

  • status [out]
    Při vrácení obsahuje ukazatel na strukturu MPI_Status , kde jsou uloženy informace o zprávě.

Vrácená hodnota

Vrátí MPI_SUCCESS při úspěchu. V opačném případě je návratovou hodnotou kód chyby.

Ve Fortranu je vrácená hodnota uložena v parametru IERROR .

Fortran

    MPI_IMPROBE(SOURCE, TAG, COMM, FLAG, MESSAGE, STATUS, IERROR)
          INTEGER SOURCE, TAG, COMM, FLAG, MESSAGE, STATUS(MPI_STATUS_SIZE), IERROR

Poznámky

Tato funkce vrátí příznak = true , pokud existuje zpráva, která může být přijata a která odpovídá vzoru určenému zdrojem argumentů, značkou a čárkou. Volání odpovídá stejné zprávě, která by byla přijata voláním MPI_Recv spuštěna ve stejném bodě v programu, a vrátí ve stavu stejnou hodnotu, která by byla vrácena MPI_Recv. Kromě toho vrátí ve zprávě popisovač odpovídající zprávy. V opačném případě volání vrátí příznak = false a ponechá stav a zprávu nedefinovanou.

Požadavky

Produkt

Microsoft MPI v6

Hlavička

Mpi.h; Soubor Mpif.h

Knihovna

Msmpi.lib

DLL

Msmpi.dll

Viz také

Funkce MPI typu point-to-point

MPI_Mprobe

MPI_Recv

MPI_Imrecv