NDIS_RELEASE_MUTEX マクロ (ndis.h)

NDIS_RELEASE_MUTEX マクロは、指定したミューテックス オブジェクトを解放します。

構文

void NDIS_RELEASE_MUTEX(
   _M_
);

パラメーター

_M_

初期化されたNDIS_MUTEX型ミューテックス オブジェクトへのポインター。 呼び出し元は、NDIS_INIT_MUTEX マクロの前の呼び出しでミューテックス オブジェクト 初期化しました。 NDIS_MUTEXは KMUTEX 型のラッパーです。

戻り値

NDIS_RELEASE_MUTEX は LONG 値を返します。 戻り値が 0 の場合、ミューテックス オブジェクトは解放され、シグナル状態になります。 NDIS_RELEASE_MUTEXが 0 以外の値を返す場合、ミューテックスはシグナル状態ではありません。

注釈

NDIS ネットワーク ドライバーは、ミューテックスを解放する NDIS_RELEASE_MUTEX マクロを使用する必要があります。

ミューテックス オブジェクトを現在保持しているスレッドのみが解放できます。 それ以外の場合は、バグチェックが発生します。 また、ドライバーがシグナル状態のミューテックス オブジェクトを解放しようとすると、バグチェックも発生します。

ミューテックスを取得するには、 NDIS_WAIT_FOR_MUTEX マクロを呼び出します。 ミューテックスが再帰的に取得された場合、保持スレッドはミューテックス 取得した回数と同じ回数NDIS_RELEASE_MUTEXを呼び出して、シグナル状態に戻す必要があります。

NDIS_RELEASE_MUTEX は、 KeReleaseMutex ルーチンの NDIS ラッパーです。

要件

要件
サポートされている最小のクライアント NDIS 6.0 以降でサポートされています。
対象プラットフォーム ユニバーサル
Header ndis.h
IRQL PASSIVE_LEVEL
DDI コンプライアンス規則 Irql_Synch_Function(ndis)

こちらもご覧ください

KeReleaseMutex

NDIS_INIT_MUTEX

NDIS_WAIT_FOR_MUTEX