Fonction CancelIo (ioapiset.h)
Annule toutes les opérations d’entrée et de sortie (E/S) en attente qui sont émises par le thread appelant pour le fichier spécifié. La fonction n’annule pas les opérations d’E/S que d’autres threads émettent pour un descripteur de fichier.
Pour annuler les opérations d’E/S à partir d’un autre thread, utilisez la fonction CancelIoEx.
Syntaxe
BOOL CancelIo(
[in] HANDLE hFile
);
Paramètres
[in] hFile
Descripteur du fichier.
La fonction annule toutes les opérations d’E/S en attente pour ce descripteur de fichier.
Valeur retournée
Si la fonction réussit, la valeur de retour est différente de zéro. L’opération d’annulation de toutes les opérations d’E/S en attente émises par le thread appelant pour le descripteur de fichier spécifié a bien été demandé. Le thread peut utiliser la fonction GetOverlappedResult pour déterminer quand les opérations d’E/S elles-mêmes ont été effectuées.
Si la fonction échoue, la valeur de retour est égale à zéro (0). Pour obtenir des informations détaillées sur l’erreur, appelez la fonction GetLastError.
Notes
Si des opérations d’E/S en attente sont en cours pour le descripteur de fichier spécifié et qu’elles sont émises par le thread appelant, la fonction CancelIo les annule. CancelIo annule uniquement les E/S en attente sur le descripteur, il ne modifie pas l’état du descripteur ; cela signifie que vous ne pouvez pas vous reposer sur l’état du descripteur, car vous ne pouvez pas savoir si l’opération a été terminée avec succès ou annulée.
Les opérations d’E/S doivent être émises en tant qu’E/S qui se chevauchent. Si ce n’est pas le cas, les opérations d’E/S ne retournent rien pour permettre au thread d’appeler la fonction CancelIo. Appeler de la fonction CancelIo avec un descripteur de fichier qui n’est pas ouvert avec FILE_FLAG_OVERLAPPED n’est pas utile.
Toutes les opérations d’E/S annulées se terminent avec l’erreur ERROR_OPERATION_ABORTED, et toutes les notifications d’achèvement pour les opérations d’E/S se produisent normalement.
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 XP [applications de bureau | applications UWP] |
Serveur minimal pris en charge | Windows Server 2003 [applications de bureau | applications UWP] |
Plateforme cible | Windows |
En-tête | ioapiset.h (inclure Windows.h) |
Bibliothèque | Kernel32.lib |
DLL | Kernel32.dll |
Voir aussi
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour