Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Alma işlemi gerçekleştirir ve eşleşen bir ileti alınana kadar döndürmez.
Söz dizimi
int MPIAPI MPI_Recv(
_In_opt_ void *buf,
int count,
MPI_Datatype datatype,
int source,
int tag,
MPI_Comm comm,
_Out_ MPI_Status *status
);
Parametreler
buf [in, isteğe bağlı]
Gönderilecek verileri içeren arabelleğe bir işaretçi.Sayısı
Arabellekteki öğelerin sayısı. İletinin veri bölümü boşsa count parametresini 0 olarak ayarlayın.Datatype
Arabellek dizisindeki öğelerin veri türü.Kaynak
Belirtilen iletişimci içindeki gönderme işleminin sırası. Herhangi bir kaynağın kabul edilebilir olduğunu belirtmek için MPI_ANY_SOURCE sabitini belirtin.Etiket
Farklı ileti türlerini ayırt etmek için kullanılan ileti etiketi. Herhangi bir etiketin kabul edilebilir olduğunu belirtmek için MPI_ANY_TAG sabitini belirtin.Comm
İletişimcinin tutamacı.status [out]
Dönüşte, alınan iletiyle ilgili bilgilerin depolandığı MPI_Status bir yapıya yönelik 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_RECV(BUF, COUNT, DATATYPE, SOURCE, TAG, COMM, STATUS, IERROR)
<type> BUF(*)
INTEGER COUNT, DATATYPE, SOURCE, TAG, COMM, STATUS(MPI_STATUS_SIZE), IERROR
Açıklamalar
Alınan iletinin uzunluğu alma arabelleğinin uzunluğundan küçük veya buna eşit olmalıdır. Tüm gelen veriler alma arabelleğine sığmazsa bu işlev taşma hatası döndürür.
Alınan ileti arabellekten daha kısaysa, arabelleğin yalnızca iletiye karşılık gelen bölümü değiştirilir. Arabelleğin geri kalanı değiştirilmez.
İşlemler kendilerine ileti gönderebilir. Ancak, bu engelleme gönderme ve alma işlemleri kilitlenmeye neden olabileceğinden, engelleme gönderme ve alma işlemleri, MPI_Send ve MPI_Recv ile bunu yapmak güvenli değildir.
Not
Gönderme ve alma işlemleri arasında bir asimetri vardır. Alma işlemi rastgele gönderenden gelen iletileri kabul edebilir, ancak gönderme işleminin benzersiz bir alıcı belirtmesi gerekir. Bu, veri aktarımının alıcı tarafından etkilendiği bir çekme stili yerine veri aktarımının gönderen tarafından etkilendiği bir gönderme stili uygular.
Gereksinimler
Ürün |
HPC Pack 2012 MS-MPI Yeniden Dağıtılabilir Paketi, HPC Pack 2008 R2 MS-MPI Yeniden Dağıtılabilir Paketi, HPC Pack 2008 MS-MPI Yeniden Dağıtılabilir Paketi veya HPC Pack 2008 İstemci Yardımcı Programları |
Üst bilgi |
Mpi.h; Mpif.h |
Kitaplık |
Msmpi.lib |
DLL |
Msmpi.dll |