次の方法で共有


CcScheduleReadAheadEx 関数 (ntifs.h)

CcScheduleReadAheadEx ルーチンは、キャッシュされたファイルに対して先読み ("遅延読み取り" とも呼ばれます) を実行します。 操作の I/O バイト数は、発行元のスレッドに課金されます。

構文

void CcScheduleReadAheadEx(
  [in] PFILE_OBJECT   FileObject,
  [in] PLARGE_INTEGER FileOffset,
  [in] ULONG          Length,
  [in] PETHREAD       IoIssuerThread
);

パラメーター

[in] FileObject

先行読み取りが実行されるファイルのファイル オブジェクトへのポインター。

[in] FileOffset

最後の読み取りが発生したキャッシュ ファイル内の開始バイト オフセットを指定する変数へのポインター。

[in] Length

最後に読み取られた範囲の長さ (バイト単位)。

[in] IoIssuerThread

先行読み取り要求を発行するスレッド。 ディスク I/O アカウンティングが有効になっているファイル システムの場合、これは I/O が課金されるスレッドです。 IoIssuerThread が NULL の場合、I/O は現在のスレッドに課金されます。

戻り値

なし

解説

CcScheduleReadAheadEx、Length>= 256 の場合にのみ呼び出す必要があります。 測定では、読み取りを小さく するために CcScheduleReadAheadEx を 呼び出すと、実際にはパフォーマンスが低下していることが示されています。

CcScheduleReadAheadEx は、CcCopyRead、CcCopyReadExCcFastCopyRead、または CcMdlRead の呼び出しが成功した後にのみ呼び出すことができます。

要件

要件
サポートされている最小のクライアント Windows 8
対象プラットフォーム ユニバーサル
Header ntifs.h (Ntifs.h、FltKernel.h を含む)
Library NtosKrnl.lib
[DLL] NtosKrnl.exe
IRQL <= APC_LEVEL

こちらもご覧ください

CcCopyRead

CcCopyReadEx

CcFastCopyRead

CcMdlRead

CcReadAhead

CcSetAdditionalCacheAttributes

CcSetReadAheadGranularity