Aracılığıyla paylaş


MPI_Imrecv işlevi

MPI_Mprobe veyaMPI_Improbe ile eşleşen bir ileti için engelleyici olmayan bir alma gerçekleştirir.

Söz dizimi

int MPIAPI MPI_Imrecv(
  _Out_   void         *buf,
  _In_    int          count,
  _In_    MPI_Datatype datatype,
  _Inout_ MPI_Message  *message,
  _Out_   MPI_Request  *request
);

Parametreler

  • buf [out]
    Alma arabelleğinin adresinin işaretçisi.

  • count [in]
    buf içindeki veri türü öğelerinin sayısı.

  • veri türü [in]
    buf içindeki öğelerin MPI veri türü.

  • ileti [in, out]
    İletinin işaretçisini içerir.

  • request [out]
    Dönüşte, iletişim işlemini temsil eden bir MPI_REQUEST tutamacını gösteren bir işaretçi içerir.

Döndürülen değer

Başarılı MPI_SUCCESS döndürür. Aksi takdirde, dönüş değeri bir hata kodudur.

Fortran'da dönüş değeri IERROR parametresinde depolanır.

Fortran

    MPI_IMRECV(BUF, COUNT, DATATYPE, MESSAGE, REQUEST, IERROR)
        <type> BUF(*)
        INTEGER COUNT, DATATYPE, MESSAGE, REQUEST, IERROR

Açıklamalar

Bu işlev , MPI_Mrecv engelleyici olmayan bir değişkendir ve eşleşen bir iletinin engelleyici olmayan bir alımını başlatır. Tamamlama semantiği MPI_Irecv benzer.

Bu işlevden geri döndüğünüzde ileti tanıtıcısı MPI_MESSAGE_NULL olarak ayarlanır.

Bu işlev, ileti bağımsız değişkeni olarak MPI_MESSAGE_NO_PROC ile çağrılırsa, çağrı hemen bir istek nesnesiyle birlikte döndürür ve bu nesne tamamlandığında kaynak MPI_PROC_NULL, etiket = MPI_ANY_TAG ve sayı = 0 olarak ayarlanmış = bir durum nesnesi verir, MPI_PROC_NULL'dan bir alma verilmiş gibi. MPI_MESSAGE_NULL ile bu işleve yapılan çağrı hatalıdır.

Gereksinimler

Ürün

Microsoft MPI v6

Üst bilgi

Mpi.h; Mpif.h

Kitaplık

Msmpi.lib

DLL

Msmpi.dll

Ayrıca bkz.

MPI Noktadan Noktaya İşlevler

MPI_Irecv

MPI_Mrecv

MPI_Mprobe

MPI_Improbe