Función CancelIo (ioapiset.h)
Cancela todas las operaciones de entrada y salida (E/S) pendientes emitidas por el subproceso autor de la llamada para el archivo especificado. La función no cancela las operaciones de E/S que emiten otros subprocesos para un identificador de archivo.
Para cancelar las operaciones de E/S de otro subproceso, use la función CancelIoEx.
Sintaxis
BOOL CancelIo(
[in] HANDLE hFile
);
Parámetros
[in] hFile
Identificador del archivo.
La función cancela todas las operaciones de E/S pendientes para este identificador de archivo.
Valor devuelto
Si la función se realiza correctamente, el valor devuelto es distinto de cero. La operación de cancelación de todas las operaciones de E/S pendientes emitidas por el subproceso autor de la llamada para el identificador de archivo especificado se solicitó correctamente. El subproceso puede usar la función GetOverlappedResult para determinar cuándo se han completado las propias operaciones de E/S.
Si la función no se realiza correctamente, el valor devuelto es cero (0). Para obtener información ampliada de los errores, llame a la función GetLastError.
Comentarios
Si hay operaciones de E/S pendientes en curso para el identificador de archivo especificado y las ha emitido el subproceso autor de la llamada, la función CancelIo las cancela. CancelIo cancela solo la E/S pendiente en el identificador, no cambia el estado del identificador; esto significa que no puede confiar en el estado del identificador porque no puede saber si la operación se completó correctamente o se canceló.
Las operaciones de E/S se deben emitir como E/S superpuestas. Si no es así, las operaciones de E/S no devuelven para permitir que el subproceso llame a la función CancelIo. Llamar a la función CancelIo con un identificador de archivo que no se ha abierto con FILE_FLAG_OVERLAPPED no hace nada.
Todas las operaciones de E/S canceladas se completan con el error ERROR_OPERATION_ABORTED y todas las notificaciones de finalización de las operaciones de E/S se producen normalmente.
En Windows 8 y Windows Server 2012, esta función es compatible con las siguientes tecnologías.
Tecnología | Compatible |
---|---|
Protocolo Bloque de mensajes del servidor (SMB) 3.0 | Sí |
Conmutación por error transparente (TFO) de SMB 3.0 | Sí |
SMB 3.0 con recursos compartidos de archivos de escalabilidad horizontal (SO) | Sí |
Sistema de archivos de Volumen compartido de clúster (CsvFS) | Sí |
Sistema de archivos resistente a errores (ReFS) | Sí |
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows XP [aplicaciones de escritorio | aplicaciones para UWP] |
Servidor mínimo compatible | Windows Server 2003 [aplicaciones de escritorio | aplicaciones para UWP] |
Plataforma de destino | Windows |
Encabezado | ioapiset.h (incluye Windows.h) |
Library | Kernel32.lib |
Archivo DLL | Kernel32.dll |