2016-11-08 3 views
0

Je cours un programme de Linux qui utilise beaucoup de mémoire. Si je le termine manuellement en utilisant Ctrl-C, il fera le nettoyage de la mémoire nécessaire. Maintenant, j'essaye de terminer le programme en utilisant un script. Quelle est une façon élégante de le faire? J'espère faire quelque chose de similaire à Ctrl-C afin de pouvoir nettoyer la mémoire. Est-ce que l'utilisation de la commande "kill -9" le fera?Manière élégante de tuer un programme Linux

+2

Ne fais pas 'tuer -9'. C'est extrêmement impoli à l'application. Un kill normal devrait faire ce que fait Ctrl-C. – Thilo

Répondre

3

Qu'entendez-vous par nettoyage de la mémoire? Gardez à l'esprit que la mémoire sera quand même libérée, quel que soit le signal de suppression.

Signal d'arrêt par défaut - SIGTERM (15) donne à l'application une chance de faire un travail supplémentaire mais il doit être implémenté avec un gestionnaire de signal.

Signal handling in c++

+0

Il va libérer la mémoire, tue les threads, etc. – Rayne