Como monitorar o processo externo executado pelo ProcessBuilder?

Isso deve ser bastante simples, mas não vejo nada de útil emJavaDocs.

O que eu preciso é executar algum processo externo do meu código Java e, em seguida, ser capaz de monitorar se esse processo foi desligado ou não. Em outras palavras, eu quero ser capaz de determinar com segurança se o meu processo externo não foi finalizado pelo usuário.

Se não houver solução de plataforma cruzada, aceitarei qualquer coisa que funcione no Linux.

Meu snippet atual de código:

public static void main(String[] args) {
    ProcessBuilder pb = new ProcessBuilder("some proces name");

    try {
        Process p = pb.start();
        // p.isRunning(); <- now, that would be helpful :-)
    } catch (IOException e) {
        e.printStackTrace();
    }
}

questionAnswers(3)

yourAnswerToTheQuestion