2014-09-18 1 views
0

Есть ли способ сказать Apache DefaultExecutor не ждать результата и продолжать с кодом? В настоящее время он ожидает завершения работы вызываемой программы или скрипта.DefaultExecutor не ждать результата (асинхронный вызов)

+1

Используйте асинхронный вызов: http://commons.apache.org/proper/commons-exec/apidocs/org/apache/commons/exec/DefaultExecutor.html#execute(org.apache.commons.exec.CommandLine, java.util.Map, org.apache.commons.exec.ExecuteResultHandler) – Fildor

ответ

1

У исполнителя DefaultExecutor есть методы для асинхронного выполнения.

without environment:

public void execute(CommandLine command, ExecuteResultHandler handler) 
               throws ExecuteException, IOException 

и

with environment argument

public void execute(CommandLine command, Map<String,String> environment, ExecuteResultHandler handler) 
     throws ExecuteException, IOException 

Если вы хотите игнорировать результаты, вы можете передать реализацию не-оп в ExecuteResultHandler.

 Смежные вопросы

  • Нет связанных вопросов^_^