Comme on l’a vu, une fois enregistré, le point de sortie est un paramètre à l’échelle du système. Et le programme de sortie sera invoqué chaque fois qu’un full open se produira sur de nombreuses tables de bases de données sur le système. Il faut bien comprendre que le job
Ecrire le programme point de sortie
qui émet la requête d’ouverture de base de données attendra que le programme de sortie se termine avant de traiter la requête d’ouverture. Selon la manière dont le programme de sortie est écrit et ce qu’il fait, cela peut avoir un profond impact négatif sur la performance applicative.
Si vous optez pour le point de sortie, il y a quelques autres aspects à prendre en compte pendant la phase de conception :
• Assurez-vous que votre programme peut traiter des ouvertures de tables multiples (comme dans le cas de jointures de tables multiples définies dans un fichier logique, vue ou requête, ainsi que de tables et/ou de vues multiples spécifiées dans une instruction SQL). Par exemple, si une vue de jointure multitable fait l’objet d’une ouverture, le programme de sortie est appelé une seule fois, mais il reçoit la vue et une liste de chacune des tables qui constituent la vue de jointure. Pour traiter à fond la requête d’ouverture, votre programme doit être capable de traiter chaque vue/table présente dans cette liste.
• Si votre programme de sortie ouvre lui-même une table, vous devez rechercher la présence d’appels de programme récursifs potentiels et les traiter. Faute de quoi, votre programme se trouvera lui-même dans une boucle infinie récursive. En outre, si le programme de sortie est en train d’ouvrir une table en utilisant RLA, vous devez spécifier le mot-clé USROPN dans la section Fspec du programme. Après avoir déterminé que la table qui a causé l’appel du programme n’est pas celle que vous êtes en train d’ouvrir dans le programme de sortie, vous pouvez l’ouvrir explicitement dans votre programme. Là encore, si ces choses ne sont pas bien faites, il y aura une boucle récursive. (Je reviendrai sur le bouclage récursif.)
• Si le programme de sortie change le code de retour en le mettant à zéro, l’ouverture de la base de données échouera. Si le programme ne change pas le code de retour ou lui donne la valeur 1, la demande d’ouverture sera acceptée puis continuera.
• Le programme de sortie doit être exempt de threads.
Téléchargez cette ressource
![Guide inmac wstore pour l’équipement IT de l’entreprise](https://www.itpro.fr/wp-content/uploads/2024/04/Guide-inmac-wstore-Juillet-2024.jpg)
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
- Activer la mise en veille prolongée dans Windows 10
- Les 6 étapes vers un diagnostic réussi
- N° 2 : Il faut supporter des langues multiples dans SharePoint Portal Server
- Partager vos images, vidéos, musique et imprimante avec le Groupe résidentiel
- Cybersécurité Active Directory et les attaques de nouvelle génération