次の方法で共有


MSMPI_Queuelock_acquire関数

Microsoft MPI ライブラリのグローバル ロックを取得します。 ロック キューは先入れ先出し (FIFO) キューです。

構文

void MSMPI_Queuelock_acquire(
  _Out_ MSMPI_Lock_queue *queue
);

パラメーター

  • queue [out]
    ユーザーが MSMPI_Queuelock_release 関数を使用してロックを解放するまで、キュー内の呼び出し元スレッドの位置を表すユーザー指定 のMSMPI_Lock_queue 構造体を指します。

戻り値

この関数は値を返しません。

注釈

この関数の動作は、使用中のスレッド サポートのレベルによって異なります。 スレッドのサポートが MPI_THREAD_SERIALIZED 以下の場合、この関数は Microsoft MPI グローバル ロックを取得します。これにより、呼び出し元の FIFO シリアル化が提供され、進行中の MSMPI_Waitsome_interruptible 関数呼び出しが中断されます。

通常、アプリケーションはロックを取得するたびに、スタックにキュー構造を割り当てる必要があります。

スレッドがマルチスレッド アプリケーションで MSMPI_Waitsome_interruptible を使用するときのエラーを回避するには、すべてのスレッドが MPI 関数を呼び出す前にグローバル ロックを取得する必要があります。

この関数は、標準の拡張機能です。

要件

製品

HPC Pack 2012 MS-MPI 再頒布可能パッケージ、HPC Pack 2008 R2 MS-MPI 再頒布可能パッケージ、HPC Pack 2008 MS-MPI 再頒布可能パッケージまたは HPC Pack 2008 クライアント ユーティリティ

ヘッダー

Mpi.h

ライブラリ

Msmpi.lib

[DLL]

Msmpi.dll

こちらもご覧ください

MPI ポイント対ポイント関数

MSMPI_Lock_queue

MSMPI_Queuelock_release

MSMPI_Waitsome_interruptible