共用方式為


MPI_Bsend 函式

以緩衝模式將資料傳送至指定的進程。 此函式會在可以安全地重複使用傳送緩衝區時傳回。

語法

int MPIAPI MPI_Bsend(
  _In_opt_ void         *buf,
           int          count,
           MPI_Datatype datatype,
           int          dest,
           int          tag,
           MPI_Comm     comm
);

參數

  • buf [in, optional]
    緩衝區的指標,其中包含要傳送的資料。

  • 計數
    緩衝區陣列中的專案數目。 如果訊息的資料部分是空的,請將 count 參數設定為 0。

  • datatype
    緩衝區中專案的資料類型。

  • dest
    comm參數所指定之 communicator 內的目的地進程排名。

  • 標記
    可用來區分不同類型的訊息的訊息標籤。

  • 通訊
    通訊器的控制碼。

傳回值

傳回成功 時MPI_SUCCESS 。 否則,傳回值是錯誤碼。

在 Fortran 中,傳回值會儲存在 IERROR 參數中。

Fortran

    MPI_BSEND(BUF, COUNT, DATATYPE, DEST, TAG, COMM, IERROR)
        <type> BUF(*)
        INTEGER COUNT, DATATYPE, DEST, TAG, COMM, IERROR

備註

此函式是本機的,它可以順利完成傳送作業,而不會發生相符的接收作業。

不論是否已張貼相符的接收作業,都可以啟動此函式。 在張貼相符的接收之前,它可以完成傳送作業。 完成不取決於相符接收作業的出現。 如果您呼叫此函式且未張貼相符的接收作業,MPI 實作必須緩衝傳出訊息,以便傳送呼叫可以傳回。

如果緩衝區空間不足,此函式會傳回錯誤。 可用緩衝區空間的數量是由使用者使用 MPI_Buffer_attach 函式來控制。

規格需求

產品

HPC Pack 2012 MS-MPI 可轉散發套件、HPC Pack 2008 R2 MS-MPI 可轉散發套件、HPC Pack 2008 MS-MPI 可轉散發套件或 HPC Pack 2008 用戶端公用程式

標頭

Mpi.h;Mpif.h

媒體櫃

Msmpi.lib

DLL

Msmpi.dll

另請參閱

MPI 點對點函式

MPI_Buffer_attach

MPI_Send

MPI_Ssend

MPI_Rsend

MPI_Recv