Le monde des ordinateurs est imparfait par nature. Des incidents surviennent. Particulièrement lorsqu’on communique sur un réseau aussi vaste et divers qu’Internet. Pour que votre logiciel TCP/IP remplisse bien sa fonction, il doit détecter les erreurs et redresser la situation le plus élégamment possible.
Quand une erreur survient
Traitement des erreurs
pendant un appel adressé à une API sockets, celle-ci renvoie -1 pour indiquer l’échec. Elle inscrit aussi un numéro d’erreur dans une variable spéciale appelée errno. Quand une telle défaillance est détectée, il est bon que les programmes extraient ce numéro d’erreur et l’utilisent pour indiquer à l’utilisateur ce qui a raté.
Si vous avez lu mes précédents articles sur la programmation IFS (voir la série en sept parties RPG et l’IFS, www.itpro. fr), vous observerez que les API sockets et les API IFS traitent les erreurs par le même mécanisme.
Pour obtenir la valeur errno à partir d’un programme RPG, il faut appeler une API nommée _errno (A en figure 8). Cette API donne un pointeur vers un entier qui contient un numéro d’erreur. L’API String Error (strerror) peut être utilisée pour extraire un message d’erreur en clair qui correspond à la valeur de errno. En B, on voit comment extraire ce message et l’utiliser comme entrée dans une sous-procédure appelée joblog().
La sous-procédure joblog() écrit le message d’erreur dans le job log. Par manque de place, je n’ai fourni ici aucune figure montrant comment joblog() fonctionne, mais elle se trouve dans le téléchargement de code pour cet article.
Téléchargez cette ressource
Guide inmac wstore pour l’équipement IT de l’entreprise
Découvrez les dernières tendances et solutions IT autour des univers de Poste de travail, Affichage et Collaboration, Impression et Infrastructure, et notre nouveau dossier thématique sur l’éco-conception et les bonnes pratiques à adopter pour réduire votre impact environnemental.
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Multicloud Computing : Êtes-vous prêt pour la prochaine nouvelle vague informatique ?
- IA : les PME devraient adopter des outils NoCode appropriés
- Guide des certifications Microsoft
- Transition vers le Cloud : l’approche stratégique pour répondre aux exigences de cybersécurité NIS 2
- Vers une meilleure qualité de données : l’IA vient en renfort