c++ - programacion - ¿Se crean procesos secundarios con fork() que se eliminan automáticamente cuando se mata al padre?
programacion multihilo en c (1)
Estoy creando procesos secundarios con fork()
en C / C ++.
Cuando el proceso principal finaliza (o es asesinado por algún motivo), quiero que también se eliminen todos los procesos hijos.
¿Lo hace automáticamente el sistema? ¿O tengo que hacerlo yo mismo?
Gracias.
Preguntas similares preexistentes:
No. Si se mata al padre, los hijos se convierten en hijos del proceso init (que tiene el id. De proceso 1 y se lanza como el primer proceso de usuario por el kernel).
El proceso init verifica periódicamente si hay hijos nuevos y los elimina si han salido (lo que libera los recursos asignados por su valor de retorno).
La pregunta ya se discutió con respuestas de calidad aquí: ¿Cómo hacer que el proceso del niño muera después de que el padre abandona?