Lorsque je veux tuer un processus via le Moniteur système, deux méthodes rapides me sont proposées, Kill Process et End Process. Quelle est la différence entre ces deux?
la source
Lorsque je veux tuer un processus via le Moniteur système, deux méthodes rapides me sont proposées, Kill Process et End Process. Quelle est la différence entre ces deux?
Selon le manuel du Moniteur système, vous devez normalement utiliser "Terminer le processus", et seulement en cas d'échec, utiliser "Kill Process":
Vous ne mettez généralement fin à un processus que si vous ne pouvez pas terminer le processus normalement comme décrit dans Pour terminer un processus.
Sur le plan technique, cela me fait penser que End Process envoie un SIGQUIT, ce qui permet au processus de piéger et d'effectuer un nettoyage si nécessaire, mais si cela échoue, Kill Process devrait envoyer un SIGKILL qui devrait interrompre violemment le processus, sans chance de récupération. Utiliser avec modération!
J'étais aussi curieux, alors j'ai simplement parcouru le code source et trouvé ce qui suit dans application.cpp . Il y a plus à ce code mais je pense que ces corrélations avec les options, au moins pour System Monitor 3.8.2.1 à 3.19.3:
Voir cette question sur Quora à propos des signaux SIGINT, SIGTERM, SIGKILL et SIGSTOP pour une bonne explication sur tous les signaux kill / quit / shutdown et leurs différences.
la source