Función SetFileIoOverlappedRange (fileapi.h)

Asocia un intervalo de direcciones virtuales con el identificador de archivo especificado. Esto indica que el kernel debe optimizar cualquier solicitud de E/S asincrónica adicional con estructuras superpuestas dentro de este intervalo. El intervalo superpuesto está bloqueado en la memoria y, a continuación, se desbloquea cuando se cierra el archivo. Después de asociar un intervalo a un identificador de archivo, no se puede desasociar.

Sintaxis

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

Parámetros

[in] FileHandle

Identificador del archivo.

Este identificador de archivo debe abrirse con derechos de acceso FILE_READ_ATTRIBUTES .

[in] OverlappedRangeStart

Dirección inicial del intervalo.

[in] Length

Longitud del intervalo, en bytes.

Valor devuelto

Devuelve un valor distinto de cero si es correcto o cero de lo contrario.

Para obtener información de error extendida, llame a GetLastError.

Comentarios

SetFileIoOverlappedRange se puede usar para mejorar el rendimiento de una aplicación que emite un gran número de E/S sin búfer asincrónico y usa un intervalo definido de estructuras superpuestas. Dado que este intervalo de estructuras está bloqueado en la memoria, el kernel puede evitar adquirir determinados bloqueos al actualizar las estructuras superpuestas con los resultados de la solicitud de E/S.

SetFileIoOverlappedRange requiere que el autor de la llamada tenga el privilegio de acceso SeLockMemoryPrivilege .

Esta función no tiene ningún efecto en la E/S almacenada en búfer y en la E/S sincrónica.

En Windows 8 y Windows Server 2012, esta función es compatible con las tecnologías siguientes.

Tecnología Compatible
Protocolo Bloque de mensajes del servidor (SMB) 3.0
Conmutación por error transparente (TFO) de SMB 3.0
SMB 3.0 con recursos compartidos de archivos de escalabilidad horizontal (SO)
Sistema de archivos de Volumen compartido de clúster (CsvFS)
Sistema de archivos resistente a errores (ReFS)

Requisitos

Requisito Value
Cliente mínimo compatible Windows Vista [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2008 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado fileapi.h (incluya Windows.h, WinBase.h)
Library Kernel32.lib
Archivo DLL Kernel32.dll

Vea también

Funciones de administración de archivos