Как убить дочерние процессы, после завершения родительского?
Добрый день, создается под процесс который порождает дочерние процессы, как убить дочерние процессы, после того как под процесс уже завершился ?
можно было бы использовать psutil взять pid под процесса, найти его все дочерние рекурсивно и убить.
Но если под процесс завершился, а случилось так, что дочерние остались (например драйвер хрома) висеть, то psutil уже не поможет, так как под процесса не существует и соответственно не видно его дочерних.
Да совсем забыл, все это под windows
Вообщем решил сам свою проблему, замечательный стандартный модуль atexit, позволяет при завершении процесса использовать psutil и убить весь мусор оставшийся после процесса.
Смотрите в сторону SIGNAL операционная система посылает сигналы или события перед закрытием, вы можете их перехватывать и вызывать свой код. В Виндоуз приложение не реагирующее на ввод система предлагает убить через 15 секунд , так что время есть