Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Effectue une lecture asynchrone à partir d’un fichier à l’aide d’un anneau d’E/S. Cette opération est similaire à l’appel de ReadFileEx.
Syntaxe
HRESULT BuildIoRingReadFile(
HIORING ioRing,
IORING_HANDLE_REF fileRef,
IORING_BUFFER_REF dataRef,
UINT32 numberOfBytesToRead,
UINT64 fileOffset,
UINT_PTR userData,
IORING_SQE_FLAGS sqeFlags
);
Paramètres
ioRing
HiORING représentant un handle à l’anneau d’E/S qui effectue l’opération de lecture.
fileRef
Une IORING_HANDLE_REF spécifiant le fichier à lire.
dataRef
Une IORING_BUFFER_REF en spécifiant la mémoire tampon dans laquelle le fichier est lu. La mémoire tampon fournie doit avoir une taille d’au moins numberOfBytesToRead octets.
numberOfBytesToRead
Nombre d’octets à lire.
fileOffset
Décalage dans le fichier pour commencer la lecture.
userData
Valeur UINT_PTR identifiant l’opération de lecture de fichier. Spécifiez cette valeur lors de l’annulation de l’opération avec un appel à BuildIoRingCancelRequest. Si une application implémente le comportement d’annulation de l’opération, la valeur userData doit être unique. Sinon, la valeur est traitée comme opaque par le système et peut être n’importe quoi, y compris 0.
sqeFlags
Valeur retournée
Retourne un HRESULT, y compris, mais pas limité aux éléments suivants :
| Valeur | Descriptif |
|---|---|
| S_OK | Success |
| IORING_E_SUBMISSION_QUEUE_FULL | La file d’attente de soumission est complète et aucune entrée supplémentaire n’est disponible pour la génération. L’application doit soumettre les entrées existantes et attendre que certaines d’entre elles se terminent avant d’ajouter d’autres opérations à la file d’attente. |
| IORING_E_UNKNOWN_REQUIRED_FLAG | L’application a fourni un indicateur requis qui n’est pas connu de l’implémentation. Le code de la bibliothèque doit vérifier le champ IoRingVersion de l’IORING_INFO obtenu à partir d’un appel à GetIoRingInfo pour déterminer la version d’API d’un anneau d’E/S qui détermine les opérations et indicateurs pris en charge. Les applications doivent connaître la version utilisée pour créer l’anneau d’E/S et ne doivent donc pas fournir d’indicateurs non pris en charge lors de l’exécution. |
Remarques
Vérifiez la prise en charge de l’anneau d’E/S pour les opérations de lecture de fichier en appelant IsIoRingOpSupported et en spécifiant IORING_OP_READ pour le paramètre d’opération .
Spécifications
| Requirement | Valeur |
|---|---|
| Client minimum requis | Windows Build 22000 |
| Serveur minimal pris en charge | Windows Build 22000 |
| Header | ioringapi.h |
| Library | noyau32. Lib |