SetFileIoOverlappedRange, fonction (fileapi.h)
Associe une plage d’adresses virtuelles au descripteur de fichier spécifié. Cela indique que le noyau doit optimiser toutes les demandes d’E/S asynchrones supplémentaires avec des structures qui se chevauchent à l’intérieur de cette plage. La plage qui se chevauche est verrouillée en mémoire, puis déverrouillée lorsque le fichier est fermé. Une fois qu’une plage est associée à un handle de fichier, elle ne peut pas être dissociée.
Syntaxe
BOOL SetFileIoOverlappedRange(
[in] HANDLE FileHandle,
[in] PUCHAR OverlappedRangeStart,
[in] ULONG Length
);
Paramètres
[in] FileHandle
Descripteur du fichier.
Ce handle de fichier doit être ouvert avec FILE_READ_ATTRIBUTES droits d’accès.
[in] OverlappedRangeStart
Adresse de départ de la plage.
[in] Length
Longueur de la plage, en octets.
Valeur retournée
Retourne une valeur différente de zéro en cas de réussite ou de zéro dans le cas contraire.
Pour obtenir des informations détaillées sur l’erreur, appelez GetLastError.
Remarques
SetFileIoOverlappedRange peut être utilisé pour améliorer les performances d’une application qui émet un nombre élevé d’E/S asynchrones sans débogage et utilise une plage définie de structures superposées. Étant donné que cette plage de structures est verrouillée en mémoire, le noyau peut éviter d’acquérir certains verrous lors de la mise à jour des structures qui se chevauchent avec les résultats de la demande d’E/S.
SetFileIoOverlappedRange nécessite que l’appelant dispose du privilège d’accès SeLockMemoryPrivilege .
Cette fonction n’a aucun effet sur les E/S en mémoire tampon et synchrones.
Dans Windows 8 et Windows Server 2012, cette fonction est prise en charge par les technologies suivantes.
Technologie | Prise en charge |
---|---|
Protocole Server Message Block (SMB) 3.0 | Oui |
Basculement transparent SMB 3.0 (TFO) | Oui |
SMB 3.0 avec partages de fichiers avec montée en puissance parallèle (SO) | Oui |
Système de fichiers du volume partagé de cluster (CsvFS) | Oui |
Système de fichiers résilient (ReFS) | Oui |
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows Vista [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2008 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | fileapi.h (inclure Windows.h, WinBase.h) |
Bibliothèque | Kernel32.lib |
DLL | Kernel32.dll |