Udostępnij za pośrednictwem


MPI_Improbe, funkcja

Sondy komunikatu w sposób nieblokowania. Zapewnia mechanizm odbierania określonego komunikatu, który został dopasowany niezależnie od interweniowania operacji sondy/odbierania. Dopasowany komunikat jest odłączony od kolejki odbierania, co daje aplikacji możliwość podjęcia decyzji o sposobie odbierania komunikatu na podstawie informacji zwracanych przez nieblokującą zgodną operację sondy. Dopasowany komunikat jest następnie odbierany przy użyciu funkcji MPI_Mrecv lub MPI_Imrecv .

Składnia

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

  • źródło [in]
    Ranga źródłowa lub MPI_ANY_SOURCE.

  • tag [in]
    Tag wiadomości lub MPI_ANY_TAG.

  • comm [in]
    Uchwyt komunikatora MPI.

  • flaga [out]
    Po powrocie zawiera wskaźnik do liczby całkowitej, która wskazuje, czy określone źródło, tag i comm są zgodne. Wartość niezerowa wskazuje, że parametry są zgodne.

  • komunikat [out]
    Po powrocie zawiera wskaźnik do dopasowanego komunikatu.

  • status [out]
    Po powrocie zawiera wskaźnik do struktury MPI_Status , w której są przechowywane informacje o komunikacie.

Wartość zwracana

Zwraca MPI_SUCCESS po powodzeniu. W przeciwnym razie zwracana wartość jest kodem błędu.

W fortran wartość zwracana jest przechowywana w parametrze IERROR .

Fortran

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

Uwagi

Ta funkcja zwraca flagę = true , jeśli istnieje komunikat, który można odebrać i który jest zgodny ze wzorcem określonym przez źródło argumentów, tag i comm. Wywołanie pasuje do tego samego komunikatu, który zostałby odebrany przez wywołanie MPI_Recv wykonane w tym samym momencie w programie i zwraca w stanie tę samą wartość, która zostałaby zwrócona przez MPI_Recv. Ponadto zwraca w komunikacie dojścia do dopasowanego komunikatu. W przeciwnym razie wywołanie zwraca flagę = false i pozostawia stan i komunikat niezdefiniowany.

Wymagania

Produkt

Microsoft MPI v6

Nagłówek

Mpi.h; Mpif.h

Biblioteka

Msmpi.lib

DLL

Msmpi.dll

Zobacz też

Funkcje punkt-punkt MPI

MPI_Mprobe

MPI_Recv

MPI_Imrecv