2010-09-10 28 views
0

Je suis récemment tombé sur une application qui a gelé dans un gestionnaire SIGABRT avec aucun autre signal enregistré à la décharge immédiatement core. Jusqu'à ce que nous standardisons en laissant un seul de SIGSTOP, SIGABRT, SIGTRAP, etc., nous utiliserons gcore et SIGKILL, mais étant donné que la manipulation cassée était le problème, je me suis demandé pourquoi SIGSTOP et SIGKILL ne sont pas un SIGCORE standard. cela ne peut pas être pris ou ignoré. Est-ce que quelqu'un sait pourquoi on a été ou ne devrait pas être ajouté?Pourquoi n'y a-t-il pas de signal coredump non reconnaissable?

Répondre

0

Une raison peut être que le programmeur a un moyen d'éviter l'exécution du gestionnaire d'erreurs standard. Parfois, le gestionnaire standard peut être "mauvais" (par exemple, le traitement du fichier "noyau" peut être lent ou coûteux en raison d'une fuite d'espace disque). Pour chaque comportement "normal" de défaut "standard", il y a une application (ou peut-être un programmeur) qui pense qu'il vaut mieux le changer ...