Класс Java - не ждите завершения процесса - PullRequest
5 голосов
/ 19 июля 2011

Я создал такой процесс для запуска эмулятора Android:

Process p = Runtime.getRuntime().exec("emulator.exe -avd Testing -no-boot-anim -scale 0.42");

Мой класс Java делает то, что ему нужно, но он никогда не заканчивается, поскольку этот процесс не был уничтожен.Я просто хочу, чтобы мой Java-класс делал то, что ему нужно, и выходил, не дожидаясь и не разрушая запущенный процесс.Я пробовал:

System.Exit(0)

Но мой класс Java не проходит мимо.Что я могу сделать?

1 Ответ

4 голосов
/ 19 июля 2011

Вам необходимо обработать stdout (и stderr) дочернего процесса, иначе вызов метода exec блокируется. Смотрите здесь Почему Process.waitFor () никогда не возвращается?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...