Demandes asynchrones
Lorsque Read Structured Fields est demandée de manière asynchrone (option A dans la chaîne de données), l'application ne peut pas supposer que :
- Le code retour est correct.
- Les données dans le tampon de communication (tampon de lecture) sont correctes.
- L'hôte ne traite plus la demande Read Structured Fields.
Lorsqu'il est demandé de manière asynchrone, EHLLAPI renvoie les valeurs suivantes :
- Un ID de demande de 16 bits aux positions 13 à 14 (9 à 10 pour l'interface standard) de la chaîne de données
- L'adresse d'un objet événement aux positions 17 à 20 de la chaîne de données
Ceux-ci sont utilisés pour terminer l’appel asynchrone Read Structured Fields.
Les étapes suivantes doivent être effectuées pour déterminer le résultat d’un appel de fonction asynchrone Read Structured Fields :
- Si le code retour EHLLAPI n'est pas zéro, la demande a échoué. Aucune demande asynchrone n'a été effectuée. L'application doit prendre les mesures appropriées avant de tenter à nouveau l'appel.
- Si le code retour est zéro, l'application doit attendre que l'objet événement soit dans l'état signalé à l'aide de la fonction Get Request Completion (125) ou Wait For Single Object. L'objet événement ne doit pas être réutilisé. L'objet événement est valide uniquement pendant la durée de l'appel de fonction Read Structured Fields jusqu'à la fin de l'appel de fonction Get Request Completion (125).
- Une fois que l'objet événement est dans l'état signalé, utilisez l'ID de demande de 16 bits renvoyé comme paramètre ID de demande dans un appel à la fonction Get Request Completion (125). La chaîne de données renvoyée par l’appel de fonction Get Request Completion (125) contient le code retour final de l’appel de fonction Read Structured Fields.
Lorsque Read Structured Fields est demandée de manière asynchrone (l'option M dans la chaîne de données), l'application ne peut pas supposer que :
- Le code retour est correct.
- Les données dans le tampon de communication (tampon de lecture) sont correctes.
- L'hôte ne traite plus la demande Read Structured Fields.
Lorsqu'il est demandé de manière asynchrone avec l'option M, EHLLAPI renvoie les valeurs suivantes :
- Un ID de demande de 16 bits aux positions 13 à 14 (9 à 10 pour l'interface standard) de la chaîne de données
- ID de tâche du mode de message asynchrone aux positions 17 à 18 (11 à 12 pour l'interface standard) de la chaîne de données.
Ceux-ci sont utilisés pour terminer l’appel asynchrone Read Structured Fields.