> Tech > Traitement des erreurs

Traitement des erreurs

Tech - Par Renaud ROSSET - Publié le 24 juin 2010

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

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

Mac en entreprise : le levier d’un poste de travail moderne

Mac en entreprise : le levier d’un poste de travail moderne

Ce livre blanc répond aux 9 questions clés des entreprises sur l’intégration du Mac : sécurité, compatibilité, gestion, productivité, coûts, attractivité talents, RSE et IA, et l’accompagnement sur mesure proposé par inmac wstore.

Les plus consultés sur iTPro.fr

A lire aussi sur le site

À la une de la chaîne Tech