CcScheduleReadAhead function (ntifs.h)

The CcScheduleReadAhead routine performs read-ahead (also called "lazy read") on a cached file. CcScheduleReadAhead should never be called directly. The CcReadAhead macro should be called instead.

Syntax

void CcScheduleReadAhead(
  [in] PFILE_OBJECT   FileObject,
  [in] PLARGE_INTEGER FileOffset,
  [in] ULONG          Length
);

Parameters

[in] FileObject

Pointer to a file object for the file on which read-ahead is to be performed.

[in] FileOffset

Pointer to a variable that specifies the starting byte offset within the cached file where the last read occurred.

[in] Length

Length in bytes of the range that was last read.

Return value

None

Remarks

The CcReadAhead macro is a wrapper for CcScheduleReadAhead. It calls CcScheduleReadAhead only if Length >= 256. Measurements have shown that calling CcScheduleReadAhead for smaller reads actually decreases performance.

CcReadAhead and CcScheduleReadAhead can only be called after a successful call to CcCopyRead, CcFastCopyRead, or CcMdlRead.

Requirements

Requirement Value
Target Platform Universal
Header ntifs.h (include Ntifs.h)
Library NtosKrnl.lib
DLL NtosKrnl.exe

See also

CcCopyRead

CcFastCopyRead

CcMdlRead

CcScheduleReadAhead

CcSetAdditionalCacheAttributes

CcSetReadAheadGranularity