У меня есть Java-программа, которая запускает ряд других программ. Как только пользователь закончил, у него есть кнопка, чтобы убить все процессы, это должно убить все, что работает, но оно должно сделать это с помощью их принудительного вызова. По крайней мере, один из этих других процессов также написан на Java и имеет несколько перехватчиков завершения работы, поскольку он автоматически сохраняет файл настроек при выходе и уничтожает запущенные им процессы, например.
Runtime.getRuntime().addShutdownHook(new Thread() {
public void run() {
if (process != null)
process.destroy();
}
}
Когда вызовы основного процесса уничтожают, вышеуказанный код не запускается в подпроцессе. В любом случае я могу прервать процессы, чтобы они продолжались?
Я портирую с Perl, который делает это, будет kill (9, @ kill_process);
Спасибо.