次の方法で共有


FsRtlOplockGetAnyBreakOwnerProcess 関数 (ntifs.h)

FsRtlOplockGetAnyBreakOwnerProcess は、疑わしく壊れている日和見ロック (oplock) の所有者を返します。

構文

PEPROCESS FsRtlOplockGetAnyBreakOwnerProcess(
  POPLOCK Oplock
);

パラメーター

Oplock

ファイルの不透明な oplock 構造体へのポインター。 このポインターは、FsRtlInitializeOplockへの以前の呼び出しによって初期化されている必要があります。

戻り値

このメソッドは、所有者が見つからない場合 NULL を返します。それ以外の場合は、所有者のプロセス オブジェクト (PEPROCESS) へのポインターを返します。

備考

FsRtlOplockGetAnyBreakOwnerProcess 、次のように、疑わしく壊れている oplock の所有者を選択します。

  • oplock に排他的所有者が存在する場合、fsRtlOplockGetAnyBreakOwnerProcess は、排他的所有者の EPROCESS へのポインターを返します。

  • oplock に排他的所有者が存在せず、中断キューが空でない場合、fsRtlOplockGetAnyBreakOwnerProcess は、キュー内の最初の EPROCESS へのポインターを任意に返します。

  • それ以外 FsRtlOplockGetAnyBreakOwnerProcess は NULL を返します。

FsRtlOplockGetAnyBreakOwnerProcess が NULL 以外を返す場合、呼び出し元は、ObDeferenceObject を呼び出して、その代わりに取得した参照を解放する必要があります。

FsRtlOplockGetAnyBreakOwnerProcess 、中断が実際に保留中であること、または返されるプロセスが実際に所有者であることを確認しようとはしません。

必要条件

要件 価値
サポートされる最小クライアント Windows 10 バージョン 2004
ヘッダー ntifs.h

関連項目

FsRtlInitializeOplock

ObDeferenceObject