En fait l'idée est la suivante : lorsque le processus reçoit le signal SIGTERM, il commence à ranger ses affaires et à écrire ses données sur le disque.
Le problème est le suivant : comment être sûr que le processus a bien écrit toutes les données qu'il voulait écrire sur le disque avant d'être tué (SIGKILL) et donc l'arrêt complet de la machine.
Ma première idée était donc de récupérer ce fameux SIGKILL afin de vérifier que le boulot a bien été fait et achevé lors de la capture du SIGTERM mais cela n'est pas possible.
Ma question est donc : comment être sûr que le processus s'est "terminé correctement" et non brutalement par un SIGKILL ?
Pour parler d'un cas concret, j'ai lu un sujet qui parlait du même problème et où le processus était VMWare. En effet, le délais entre le SIGTERM et le SIGKILL est de 5 secondes alors que les machines virtuelles prenaient environ 10 minutes à s'arrêter. Dans ce cas on comprend bien bien le problème qui est d'empêcher l'arrêt de la machine tant que le processus VMWare n'a pas eu le temps d'arrêter les machines virtuelles.
Mon objectif est-il plus clair ?
![;)](https://www.developpez.net/forums/images/smilies/icon_wink.gif)
Partager