REQUEST_OPLOCK_INPUT_BUFFER 構造体 (winioctl.h)

便宜的ロック (oplock) を要求したり、FSCTL_REQUEST_OPLOCK 制御コードで oplock の解除を確認したりするための情報が含まれます。

構文

typedef struct _REQUEST_OPLOCK_INPUT_BUFFER {
  WORD  StructureVersion;
  WORD  StructureLength;
  DWORD RequestedOplockLevel;
  DWORD Flags;
} REQUEST_OPLOCK_INPUT_BUFFER, *PREQUEST_OPLOCK_INPUT_BUFFER;

メンバー

StructureVersion

使用されている REQUEST_OPLOCK_INPUT_BUFFER 構造体のバージョン。 このメンバーを REQUEST_OPLOCK_CURRENT_VERSION に設定します。

StructureLength

この構造体の長さ (バイト単位)。 sizeof(REQUEST_OPLOCK_INPUT_BUFFER) に設定する必要があります。

RequestedOplockLevel

次の oplock レベル値の有効な組み合わせ。

意味
OPLOCK_LEVEL_CACHE_READ
クライアントが読み取りをキャッシュできるようにします。 複数のクライアントに付与される場合があります。
OPLOCK_LEVEL_CACHE_HANDLE
クライアントが開いているハンドルをキャッシュできるようにします。 複数のクライアントに付与される場合があります。
OPLOCK_LEVEL_CACHE_WRITE
クライアントが書き込みとバイト範囲ロックをキャッシュできるようにします。 1 つのクライアントにのみ付与できます。
 

これらの値の有効な組み合わせは次のとおりです。

  • OPLOCK_LEVEL_CACHE_READ
  • OPLOCK_LEVEL_CACHE_READ | OPLOCK_LEVEL_CACHE_HANDLE
  • OPLOCK_LEVEL_CACHE_READ | OPLOCK_LEVEL_CACHE_WRITE
  • OPLOCK_LEVEL_CACHE_READ | OPLOCK_LEVEL_CACHE_WRITE | OPLOCK_LEVEL_CACHE_HANDLE
これらの値の組み合わせの詳細については、「 FSCTL_REQUEST_OPLOCK」を参照してください。

Flags

次の要求フラグ値の有効な組み合わせ。

意味
REQUEST_OPLOCK_INPUT_FLAG_REQUEST
新しい oplock を要求します。 このフラグを REQUEST_OPLOCK_INPUT_FLAG_ACK と共に設定することは有効ではなく、 ERROR_INVALID_PARAMETERで要求が失敗します。
REQUEST_OPLOCK_INPUT_FLAG_ACK
oplock ブレークの受信確認。 このフラグを REQUEST_OPLOCK_ INPUT_FLAG_REQUEST と共に設定することは無効であり、 ERROR_INVALID_PARAMETERで要求が失敗します。

要件

要件
サポートされている最小のクライアント Windows 7 [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 R2 [デスクトップ アプリのみ]
Header winioctl.h (Windows.h を含む)

こちらもご覧ください

FSCTL_REQUEST_OPLOCK

REQUEST_OPLOCK_OUTPUT_BUFFER