J'ai fait un programme. Vers la fin du programme, celui-ci se fait tuer
par un coup de SIGKILL. Mais je ne sais pas par qui ni surtout pourquoi.
J'ai essayé strace qui se termine plus ou moins comme ceci (en virant
mon propre output) :
Normalement à ce moment là j'ai un thread qui se termine.
Cela dit quelquechose à quelqu'un ?
Et à part ca, quelle est la facon la plus élégante de débugger un
programme qui comporte plusieurs threads ? A part la méthode gdb dont on
parle ici ou là ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jean-Marc Bourguet
cedric writes:
Cela dit quelquechose à quelqu'un ?
Rien.
Et à part ca, quelle est la facon la plus élégante de débugger un programme qui comporte plusieurs threads ? A part la méthode gdb dont on parle ici ou là ?
La methode classique: reduire le probleme, le comprendre, en trouver la cause, en trouver une solution. Le debuggeur n'aide qu'a trouver la cause. On peut s'en sortir avec des printf a des endroits bien choisis ou en supprimant du code jusqu'a avoir un programme tellement simple que le probleme est evident. Ca peut meme aller plus vite qu'avec un debuggeur parce qu'on reflechit a ce qu'on fait.
A+
-- Jean-Marc Site de usenet-fr: http://www.usenet-fr.news.eu.org
cedric <rixed@happyleptic.NOSPAM.org> writes:
Cela dit quelquechose à quelqu'un ?
Rien.
Et à part ca, quelle est la facon la plus élégante de débugger un
programme qui comporte plusieurs threads ? A part la méthode gdb
dont on parle ici ou là ?
La methode classique: reduire le probleme, le comprendre, en trouver
la cause, en trouver une solution. Le debuggeur n'aide qu'a trouver
la cause. On peut s'en sortir avec des printf a des endroits bien
choisis ou en supprimant du code jusqu'a avoir un programme tellement
simple que le probleme est evident. Ca peut meme aller plus vite
qu'avec un debuggeur parce qu'on reflechit a ce qu'on fait.
A+
--
Jean-Marc
Site de usenet-fr: http://www.usenet-fr.news.eu.org
Et à part ca, quelle est la facon la plus élégante de débugger un programme qui comporte plusieurs threads ? A part la méthode gdb dont on parle ici ou là ?
La methode classique: reduire le probleme, le comprendre, en trouver la cause, en trouver une solution. Le debuggeur n'aide qu'a trouver la cause. On peut s'en sortir avec des printf a des endroits bien choisis ou en supprimant du code jusqu'a avoir un programme tellement simple que le probleme est evident. Ca peut meme aller plus vite qu'avec un debuggeur parce qu'on reflechit a ce qu'on fait.
A+
-- Jean-Marc Site de usenet-fr: http://www.usenet-fr.news.eu.org
manu
cedric wrote:
J'ai fait un programme. Vers la fin du programme, celui-ci se fait tuer par un coup de SIGKILL. Mais je ne sais pas par qui ni surtout pourquoi.
Appelle Derick ou Columbo, ils resolvent ce genre de problèmes tous les jours :)
Plus serieusement, il arrive que le noyau tue un processus. Pas de message sur la console?
-- Emmanuel Dreyfus Publicité subliminale: achetez ce livre! http://www.eyrolles.com/Informatique/Livre/9782212114638/livre-bsd.php
cedric <rixed@happyleptic.NOSPAM.org> wrote:
J'ai fait un programme. Vers la fin du programme, celui-ci se fait tuer
par un coup de SIGKILL. Mais je ne sais pas par qui ni surtout pourquoi.
Appelle Derick ou Columbo, ils resolvent ce genre de problèmes tous les
jours :)
Plus serieusement, il arrive que le noyau tue un processus. Pas de
message sur la console?
--
Emmanuel Dreyfus
Publicité subliminale: achetez ce livre!
http://www.eyrolles.com/Informatique/Livre/9782212114638/livre-bsd.php
manu@netbsd.org
J'ai fait un programme. Vers la fin du programme, celui-ci se fait tuer par un coup de SIGKILL. Mais je ne sais pas par qui ni surtout pourquoi.
Appelle Derick ou Columbo, ils resolvent ce genre de problèmes tous les jours :)
Plus serieusement, il arrive que le noyau tue un processus. Pas de message sur la console?
-- Emmanuel Dreyfus Publicité subliminale: achetez ce livre! http://www.eyrolles.com/Informatique/Livre/9782212114638/livre-bsd.php
cedric
Jean-Marc Bourguet wrote:
La methode classique: reduire le probleme, le comprendre, en trouver la cause, en trouver une solution. Le debuggeur n'aide qu'a trouver la cause. On peut s'en sortir avec des printf a des endroits bien choisis ou en supprimant du code jusqu'a avoir un programme tellement simple que le probleme est evident. Ca peut meme aller plus vite qu'avec un debuggeur parce qu'on reflechit a ce qu'on fait.
Moui... C'est ce que je fait, mais si on compte que le programme fait communiquer 3 threads par une lib UDP custom, ca s'avère un peut énervant pour suivre le fil...
Jean-Marc Bourguet wrote:
La methode classique: reduire le probleme, le comprendre, en trouver
la cause, en trouver une solution. Le debuggeur n'aide qu'a trouver
la cause. On peut s'en sortir avec des printf a des endroits bien
choisis ou en supprimant du code jusqu'a avoir un programme tellement
simple que le probleme est evident. Ca peut meme aller plus vite
qu'avec un debuggeur parce qu'on reflechit a ce qu'on fait.
Moui... C'est ce que je fait, mais si on compte que le programme fait
communiquer 3 threads par une lib UDP custom, ca s'avère un peut
énervant pour suivre le fil...
La methode classique: reduire le probleme, le comprendre, en trouver la cause, en trouver une solution. Le debuggeur n'aide qu'a trouver la cause. On peut s'en sortir avec des printf a des endroits bien choisis ou en supprimant du code jusqu'a avoir un programme tellement simple que le probleme est evident. Ca peut meme aller plus vite qu'avec un debuggeur parce qu'on reflechit a ce qu'on fait.
Moui... C'est ce que je fait, mais si on compte que le programme fait communiquer 3 threads par une lib UDP custom, ca s'avère un peut énervant pour suivre le fil...
cedric
Emmanuel Dreyfus wrote:
Plus serieusement, il arrive que le noyau tue un processus. Pas de message sur la console?
Sur mon terminal j'ai :
zsh: killed frpc_check
Et c'est tout.
Emmanuel Dreyfus wrote:
Plus serieusement, il arrive que le noyau tue un processus. Pas de
message sur la console?