Freigeben über


SetFileIoOverlappedRange-Funktion (fileapi.h)

Ordnet dem angegebenen Dateihandle einen virtuellen Adressbereich zu. Dies gibt an, dass der Kernel alle weiteren asynchronen E/A-Anforderungen mit überlappenden Strukturen innerhalb dieses Bereichs optimieren sollte. Der überlappende Bereich wird im Arbeitsspeicher gesperrt und dann entsperrt, wenn die Datei geschlossen wird. Nachdem ein Bereich einem Dateihandle zugeordnet wurde, kann er nicht mehr zugeordnet werden.

Syntax

BOOL SetFileIoOverlappedRange(
  [in] HANDLE FileHandle,
  [in] PUCHAR OverlappedRangeStart,
  [in] ULONG  Length
);

Parameter

[in] FileHandle

Ein Handle zur Datei.

Dieses Dateihandle muss mit FILE_READ_ATTRIBUTES Zugriffsrechten geöffnet werden.

[in] OverlappedRangeStart

Die Startadresse für den Bereich.

[in] Length

Die Länge des Bereichs in Bytes.

Rückgabewert

Gibt ungleich null zurück, wenn erfolgreich oder andernfalls null.

Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.

Hinweise

SetFileIoOverlappedRange kann verwendet werden, um die Leistung in einer Anwendung zu verbessern, die eine große Anzahl asynchroner, nicht gepufferter E/A-Vorgänge ausgibt und einen definierten Bereich überlappender Strukturen verwendet. Da dieser Bereich von Strukturen im Arbeitsspeicher gesperrt ist, kann der Kernel vermeiden, bestimmte Sperren zu erhalten, wenn die überlappenden Strukturen mit den Ergebnissen der E/A-Anforderung aktualisiert werden.

SetFileIoOverlappedRange erfordert, dass der Aufrufer über die SeLockMemoryPrivilege-Zugriffsberechtigung verfügt .

Diese Funktion hat keine Auswirkungen auf gepufferte und synchrone E/A.

Unter Windows 8 und Windows Server 2012 wird diese Funktion von den folgenden Technologien unterstützt.

Technologie Unterstützt
SMB 3.0-Protokoll (Server Message Block) Ja
SMB 3.0 Transparent Failover (TFO) Ja
SMB 3.0 mit Dateifreigaben mit horizontaler Skalierung (SO) Ja
Dateisystem mit freigegebenen Clustervolumes (CsvFS) Ja
Robustes Dateisystem (Resilient File System, ReFS) Ja

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile fileapi.h (include Windows.h, WinBase.h)
Bibliothek Kernel32.lib
DLL Kernel32.dll

Siehe auch

Dateiverwaltungsfunktionen