IRunUtil
public interface IRunUtil
com.android.tradefed.util.IRunUtil |
Интерфейс для выполнения синхронизированных операций и системных команд.
Краткое содержание
Вложенные классы | |
---|---|
interface | IRunUtil.IRunnableResult Интерфейс для асинхронного выполнения операции, возвращающей логическое состояние. |
Публичные методы | |
---|---|
abstract void | allowInterrupt (boolean allow) Разрешает/запрещает выполнение прерываний в текущем потоке. |
abstract void | interrupt (Thread thread, String message, ErrorIdentifier errorId) Прерывает текущие/предстоящие операции запуска в данном потоке. |
abstract void | interrupt (Thread thread, String message) Прерывает текущие/предстоящие операции запуска в данном потоке. |
abstract boolean | isInterruptAllowed () Укажите статус прерывания RunUtil. |
abstract Process | runCmdInBackground (Redirect redirect, command) runCmdInBackground (Redirect redirect, command) Альтернативный метод |
abstract Process | runCmdInBackground ( command) runCmdInBackground ( command) Альтернативный метод |
abstract Process | runCmdInBackground ( command, OutputStream output) runCmdInBackground ( command, OutputStream output) Выполнение команды с |
abstract Process | runCmdInBackground (String... command) Вспомогательный метод для асинхронного выполнения системной команды. |
abstract Process | runCmdInBackground (Redirect redirect, String... command) Вспомогательный метод для асинхронного выполнения системной команды. |
abstract boolean | runEscalatingTimedRetry (long opTimeout, long initialPollInterval, long maxPollInterval, long maxTime, IRunUtil.IRunnableResult runnable) Блокирует и выполняет операцию несколько раз, пока она не завершится успешно. |
abstract boolean | runFixedTimedRetry (long opTimeout, long pollInterval, long maxTime, IRunUtil.IRunnableResult runnable) Блокирует и выполняет операцию несколько раз, пока она не завершится успешно. |
abstract boolean | runFixedTimedRetryWithOutputMonitor (long opTimeout, long idleOutputTimeout, long pollInterval, long maxTime, IRunUtil.IRunnableResult runnable) Блокирует и выполняет операцию несколько раз, пока она не завершится успешно. |
abstract CommandStatus | runTimed (long timeout, IRunUtil.IRunnableResult runnable, boolean logErrors) Блокирует и выполняет операцию, прерывая ее, если она занимает больше указанного времени. |
abstract CommandResult | runTimedCmd (long timeout, OutputStream stdout, OutputStream stderr, String... command) Вспомогательный метод для выполнения системной команды, прерывания, если это занимает больше указанного времени, и перенаправления вывода в файлы, если указано. |
abstract CommandResult | runTimedCmd (long timeout, String... command) Вспомогательный метод для выполнения системной команды и прерывания, если это занимает больше указанного времени. |
abstract CommandResult | runTimedCmdRetry (long timeout, long retryInterval, int attempts, String... command) Вспомогательный метод для выполнения системной команды и прерывания, если это занимает больше указанного времени. |
abstract CommandResult | runTimedCmdRetryWithOutputMonitor (long timeout, long idleOutputTimeout, long retryInterval, int attempts, String... command) Вспомогательный метод для выполнения системной команды и прерывания, если это занимает больше указанного времени. |
abstract CommandResult | runTimedCmdSilently (long timeout, String... command) Вспомогательный метод для выполнения системной команды и прерывания, если это занимает больше указанного времени. |
abstract CommandResult | runTimedCmdSilentlyRetry (long timeout, long retryInterval, int attempts, String... command) Вспомогательный метод для выполнения системной команды и прерывания, если это занимает больше указанного времени. |
abstract CommandResult | runTimedCmdWithInput (long timeout, String input, File stdoutFile, File stderrFile, String... command) Вспомогательный метод для выполнения системной команды, прерывания, если это занимает больше указанного времени, и перенаправления вывода в файлы, если указано. |
abstract CommandResult | runTimedCmdWithInput (long timeout, String input, String... command) Вспомогательный метод для выполнения системной команды, требующей ввода со стандартного ввода, и прерывания, если это занимает больше указанного времени. |
abstract CommandResult | runTimedCmdWithInput (long timeout, String input, command) runTimedCmdWithInput (long timeout, String input, command) Вспомогательный метод для выполнения системной команды, требующей ввода со стандартного ввода, и прерывания, если это занимает больше указанного времени. |
abstract CommandResult | runTimedCmdWithInputRedirect (long timeout, File inputRedirect, String... command) Вспомогательный метод для выполнения системной команды, которая требует перенаправления стандартного ввода из файла и прерывания, если это занимает больше указанного времени. |
abstract CommandResult | runTimedCmdWithOutputMonitor (long timeout, long idleOutputTimeout, OutputStream stdout, OutputStream stderr, String... command) Вспомогательный метод для выполнения системной команды, прерывания, если это занимает больше указанного времени, и перенаправления вывода в файлы, если указано. |
abstract CommandResult | runTimedCmdWithOutputMonitor (long timeout, long idleOutputTimeout, String... command) Вспомогательный метод для выполнения системной команды и прерывания, если это занимает больше указанного времени. |
abstract CommandResult | runTimedCmdWithOutputMonitor (long timeout, long idleOutputTimeout, OutputStream stdout, OutputStream stderr, ICacheClient cacheClient, String... command) Вспомогательный метод для выполнения системной команды с кэшированием. |
abstract boolean | runTimedRetry (long opTimeout, long pollInterval, int attempts, IRunUtil.IRunnableResult runnable) Блокирует и выполняет операцию несколько раз, пока она не завершится успешно. |
abstract boolean | runTimedRetryWithOutputMonitor (long opTimeout, long idleOutputTimeout, long pollInterval, int attempts, IRunUtil.IRunnableResult runnable) Блокирует и выполняет операцию несколько раз, пока она не завершится успешно. |
abstract CommandStatus | runTimedWithOutputMonitor (long timeout, long idleOutputTimeout, IRunUtil.IRunnableResult runnable, boolean logErrors) Блокирует и выполняет операцию, прерывая ее, если она занимает больше указанного времени. |
abstract void | setEnvVariable (String key, String value) Устанавливает переменную среды, которая будет использоваться при выполнении системных команд. |
abstract void | setEnvVariablePriority ( IRunUtil.EnvPriority priority) Решите, будет ли при создании процесса снятие переменных среды более приоритетным, чем их установка. |
abstract void | setInterruptibleInFuture (Thread thread, long timeMs) Установите прерывание после некоторого времени ожидания. |
abstract void | setLinuxInterruptProcess (boolean interrupt) Разрешить использование прерывания «kill» в Linux для процесса, выполняющегося с помощью методов #runTimed, когда он достигает тайм-аута. |
abstract void | setRedirectStderrToStdout (boolean redirect) Установите стандартный поток ошибок для перенаправления в стандартный поток вывода при выполнении системных команд. |
abstract void | setWorkingDir (File dir) Устанавливает рабочий каталог для системных команд. |
abstract void | sleep (long time) Вспомогательный метод для сна в течение заданного времени, игнорируя любые исключения. |
abstract void | unsetEnvVariable (String key) Сбрасывает переменную среды, поэтому системные команды выполняются без этой переменной среды. |
abstract void | uploadCache ( ICacheClient cacheClient, ExecutableActionResult actionResult) Загружает последний |
Публичные методы
разрешить прерывание
public abstract void allowInterrupt (boolean allow)
Разрешает/запрещает выполнение прерываний в текущем потоке. Если это разрешено, операции запуска текущего потока могут быть прерваны из других потоков с помощью метода interrupt(Thread, String)
.
Параметры | |
---|---|
allow | boolean : разрешить ли прерывание выполнения в текущем потоке. |
прерывать
public abstract void interrupt (Thread thread, String message, ErrorIdentifier errorId)
Прерывает текущие/предстоящие операции запуска в данном потоке. Операции запуска в данном потоке вызовут RunInterruptedException
.
Параметры | |
---|---|
message | String : сообщение для RunInterruptedException . |
errorId | ErrorIdentifier : представляет причину прерывания, если она известна. |
прерывать
public abstract void interrupt (Thread thread, String message)
Прерывает текущие/предстоящие операции запуска в данном потоке. Операции запуска в данном потоке вызовут RunInterruptedException
.
Параметры | |
---|---|
message | String : сообщение для RunInterruptedException . |
isInterruptAllowed
public abstract boolean isInterruptAllowed ()
Укажите статус прерывания RunUtil.
Возврат | |
---|---|
boolean | true, если выполнение можно прервать, в противном случае — false. |
запуститьCmdInBackground
public abstract Process runCmdInBackground (Redirect redirect,command)
Альтернативный метод runCmdInBackground(String)
, который принимает аргументы команды в форме ERROR(/List)
.
Параметры | |
---|---|
redirect | Redirect : ERROR(/Redirect) применяемая к ProcessBuilder . |
command | ERROR(/List) , содержащая указанную системную команду и, необязательно, аргументы для выполнения. |
Возврат | |
---|---|
Process | Process выполненной команды |
Броски | |
---|---|
| если команда не удалось выполнить |
запуститьCmdInBackground
public abstract Process runCmdInBackground (command)
Альтернативный метод runCmdInBackground(String)
, который принимает аргументы команды в форме ERROR(/List)
.
Параметры | |
---|---|
command | ERROR(/List) , содержащая указанную системную команду и, необязательно, аргументы для выполнения. |
Возврат | |
---|---|
Process | Process выполненной команды |
Броски | |
---|---|
| если команда не была выполнена |
запуститьCmdInBackground
public abstract Process runCmdInBackground (command, OutputStream output)
Выполнение команды с ERROR(/OutputStream)
регистрирует выходные данные команды. Stdout и stderr объединяются.
Параметры | |
---|---|
command | |
output | OutputStream : OutputStream для сохранения вывода. |
Возврат | |
---|---|
Process | Process выполняющий команду |
Броски | |
---|---|
| Исключение IO |
запуститьCmdInBackground
public abstract Process runCmdInBackground (String... command)
Вспомогательный метод для асинхронного выполнения системной команды.
Вернется сразу после запуска команды.
Параметры | |
---|---|
command | String : указанная системная команда и, необязательно, аргументы для выполнения. |
Возврат | |
---|---|
Process | Process выполненной команды |
Броски | |
---|---|
| если команда не была выполнена |
запуститьCmdInBackground
public abstract Process runCmdInBackground (Redirect redirect, String... command)
Вспомогательный метод для асинхронного выполнения системной команды.
Вернется сразу после запуска команды.
Параметры | |
---|---|
redirect | Redirect : ERROR(/Redirect) применяемая к ProcessBuilder . |
command | String : указанная системная команда и, необязательно, аргументы для выполнения. |
Возврат | |
---|---|
Process | Process выполненной команды |
Броски | |
---|---|
| если команда не была выполнена |
runEscalatingTimedRetry
public abstract boolean runEscalatingTimedRetry (long opTimeout, long initialPollInterval, long maxPollInterval, long maxTime, IRunUtil.IRunnableResult runnable)
Блокирует и выполняет операцию несколько раз, пока она не завершится успешно.
Экспоненциально увеличивайте время ожидания между попытками операций. Это предназначено для использования при выполнении такой операции, как опрос сервера, чтобы дать ему время на восстановление в случае временного отключения.Параметры | |
---|---|
opTimeout | long : максимальное время ожидания в мс для одной попытки операции. |
initialPollInterval | long : начальное время ожидания между попытками операции |
maxPollInterval | long : максимальное время ожидания между попытками операции. |
maxTime | long : общее приблизительное максимальное время, в течение которого можно продолжать попытку операции. |
runnable | IRunUtil.IRunnableResult : IRunUtil.IRunnableResult для выполнения |
Возврат | |
---|---|
boolean | true , если операция завершилась успешно до истечения maxTime |
запуститьFixedTimedRetry
public abstract boolean runFixedTimedRetry (long opTimeout, long pollInterval, long maxTime, IRunUtil.IRunnableResult runnable)
Блокирует и выполняет операцию несколько раз, пока она не завершится успешно.
Параметры | |
---|---|
opTimeout | long : максимальное время ожидания в мс для одной попытки операции. |
pollInterval | long : начальное время ожидания между попытками операции |
maxTime | long : общее приблизительное максимальное время, в течение которого можно продолжать попытку операции. |
runnable | IRunUtil.IRunnableResult : IRunUtil.IRunnableResult для выполнения |
Возврат | |
---|---|
boolean | true , если операция завершилась успешно до истечения maxTime |
runFixedTimedRetryWithOutputMonitor
public abstract boolean runFixedTimedRetryWithOutputMonitor (long opTimeout, long idleOutputTimeout, long pollInterval, long maxTime, IRunUtil.IRunnableResult runnable)
Блокирует и выполняет операцию несколько раз, пока она не завершится успешно. Также отслеживает активность выходных потоков, прерывая работу, если в течение определенного времени не наблюдается активности потока. Если для параметраdleidleOutputTimeout установлено нулевое значение, мониторинг потока выполняться не будет.
Параметры | |
---|---|
opTimeout | long : максимальное время ожидания в мс для одной попытки операции. |
idleOutputTimeout | long : максимальное время ожидания вывода в выходных потоках в мс. |
pollInterval | long : начальное время ожидания между попытками операции |
maxTime | long : общее приблизительное максимальное время, в течение которого можно продолжать попытку операции. |
runnable | IRunUtil.IRunnableResult : IRunUtil.IRunnableResult для выполнения |
Возврат | |
---|---|
boolean | true , если операция завершилась успешно до истечения maxTime |
RunTimed
public abstract CommandStatus runTimed (long timeout, IRunUtil.IRunnableResult runnable, boolean logErrors)
Блокирует и выполняет операцию, прерывая ее, если она занимает больше указанного времени.
Параметры | |
---|---|
timeout | long : максимальное время ожидания в мс |
runnable | IRunUtil.IRunnableResult : IRunUtil.IRunnableResult для выполнения |
logErrors | boolean : регистрировать ошибки при исключении или нет. |
Возврат | |
---|---|
CommandStatus | результат операции CommandStatus . |
runTimedCmd
public abstract CommandResult runTimedCmd (long timeout, OutputStream stdout, OutputStream stderr, String... command)
Вспомогательный метод для выполнения системной команды, прерывания, если это занимает больше указанного времени, и перенаправления вывода в файлы, если указано. Если ERROR(/OutputStream)
предоставлены таким образом, они останутся открытыми в конце функции.
Параметры | |
---|---|
timeout | long : таймаут максимального времени ожидания в мс. 0 означает отсутствие тайм-аута. |
stdout | OutputStream : ERROR(/OutputStream) где будет перенаправлен стандартный вывод. Может быть нулевым. |
stderr | OutputStream : ERROR(/OutputStream) куда будет перенаправлен вывод ошибки. Может быть нулевым. |
command | String : указанная системная команда и, необязательно, аргументы для выполнения. |
Возврат | |
---|---|
CommandResult | CommandResult содержащий результат выполнения команды |
runTimedCmd
public abstract CommandResult runTimedCmd (long timeout, String... command)
Вспомогательный метод для выполнения системной команды и прерывания, если это занимает больше указанного времени.
Параметры | |
---|---|
timeout | long : максимальное время ожидания в мс. 0 означает отсутствие тайм-аута. |
command | String : указанная системная команда и, необязательно, аргументы для выполнения. |
Возврат | |
---|---|
CommandResult | CommandResult содержащий результат выполнения команды |
runTimedCmdRetry
public abstract CommandResult runTimedCmdRetry (long timeout, long retryInterval, int attempts, String... command)
Вспомогательный метод для выполнения системной команды и прерывания, если это занимает больше указанного времени.
Параметры | |
---|---|
timeout | long : максимальное время ожидания в мс для каждой попытки. |
retryInterval | long : время ожидания между повторами команд |
attempts | int : максимальное количество попыток |
command | String : указанная системная команда и, необязательно, аргументы для выполнения. |
Возврат | |
---|---|
CommandResult | CommandResult содержащий результат выполнения команды |
runTimedCmdRetryWithOutputMonitor
public abstract CommandResult runTimedCmdRetryWithOutputMonitor (long timeout, long idleOutputTimeout, long retryInterval, int attempts, String... command)
Вспомогательный метод для выполнения системной команды и прерывания, если это занимает больше указанного времени. Также отслеживает активность выходных потоков, прерывая работу, если в течение определенного времени не наблюдается активности потока. Если для параметраdledleOutputTimeout установлено нулевое значение, мониторинг потока выполняться не будет.
Параметры | |
---|---|
timeout | long : максимальное время ожидания в мс для каждой попытки. |
idleOutputTimeout | long : максимальное время ожидания вывода в выходных потоках в мс. |
retryInterval | long : время ожидания между повторами команд |
attempts | int : максимальное количество попыток |
command | String : указанная системная команда и, необязательно, аргументы для выполнения. |
Возврат | |
---|---|
CommandResult | CommandResult содержащий результат выполнения команды |
runTimedCmdSilently
public abstract CommandResult runTimedCmdSilently (long timeout, String... command)
Вспомогательный метод для выполнения системной команды и прерывания, если это занимает больше указанного времени. Аналогично runTimedCmd(long, String)
, но не регистрирует никаких ошибок при исключении.
Параметры | |
---|---|
timeout | long : максимальное время ожидания в мс |
command | String : указанная системная команда и, необязательно, аргументы для выполнения. |
Возврат | |
---|---|
CommandResult | CommandResult содержащий результат выполнения команды |
runTimedCmdSilentlyRetry
public abstract CommandResult runTimedCmdSilentlyRetry (long timeout, long retryInterval, int attempts, String... command)
Вспомогательный метод для выполнения системной команды и прерывания, если это занимает больше указанного времени. Аналогично runTimedCmdRetry(long, long, int, String[])
, но не регистрирует никаких ошибок при исключении.
Параметры | |
---|---|
timeout | long : максимальное время ожидания в мс |
retryInterval | long : время ожидания между повторами команд |
attempts | int : максимальное количество попыток |
command | String : указанная системная команда и, необязательно, аргументы для выполнения. |
Возврат | |
---|---|
CommandResult | CommandResult содержащий результат выполнения команды |
runTimedCmdWithInput
public abstract CommandResult runTimedCmdWithInput (long timeout, String input, File stdoutFile, File stderrFile, String... command)
Вспомогательный метод для выполнения системной команды, прерывания, если это занимает больше указанного времени, и перенаправления вывода в файлы, если указано.
Параметры | |
---|---|
timeout | long : таймаут максимального времени ожидания в мс. 0 означает отсутствие тайм-аута. |
input | String : входные данные стандартного ввода для передачи в процесс. |
stdoutFile | File : ERROR(/File) , куда будет перенаправлен вывод std. Может быть нулевым. |
stderrFile | File : ERROR(/File) , куда будет перенаправлен вывод ошибки. Может быть нулевым. |
command | String : указанная системная команда и, необязательно, аргументы для выполнения. |
Возврат | |
---|---|
CommandResult | CommandResult содержащий результат выполнения команды |
runTimedCmdWithInput
public abstract CommandResult runTimedCmdWithInput (long timeout, String input, String... command)
Вспомогательный метод для выполнения системной команды, требующей ввода со стандартного ввода, и прерывания, если это занимает больше указанного времени.
Параметры | |
---|---|
timeout | long : максимальное время ожидания в мс |
input | String : входные данные стандартного ввода для передачи в процесс. |
command | String : указанная системная команда и, необязательно, аргументы для выполнения. |
Возврат | |
---|---|
CommandResult | CommandResult содержащий результат выполнения команды |
runTimedCmdWithInput
public abstract CommandResult runTimedCmdWithInput (long timeout, String input,command)
Вспомогательный метод для выполнения системной команды, требующей ввода со стандартного ввода, и прерывания, если это занимает больше указанного времени.
Параметры | |
---|---|
timeout | long : максимальное время ожидания в мс |
input | String : входные данные стандартного ввода для передачи в процесс. |
command | ERROR(/List) содержащая системную команду и, необязательно, аргументы для выполнения. |
Возврат | |
---|---|
CommandResult | CommandResult содержащий результат выполнения команды |
runTimedCmdWithInputRedirect
public abstract CommandResult runTimedCmdWithInputRedirect (long timeout, File inputRedirect, String... command)
Вспомогательный метод для выполнения системной команды, которая требует перенаправления стандартного ввода из файла и прерывания, если это занимает больше указанного времени.
Параметры | |
---|---|
timeout | long : максимальное время ожидания в мс |
inputRedirect | File : ERROR(/File) для перенаправления в качестве стандартного ввода с помощью ProcessBuilder.redirectInput() . Если значение равно нулю, стандартный ввод не будет перенаправлен. |
command | String : указанная системная команда и, необязательно, аргументы для выполнения. |
Возврат | |
---|---|
CommandResult | CommandResult содержащий результат выполнения команды |
runTimedCmdWithOutputMonitor
public abstract CommandResult runTimedCmdWithOutputMonitor (long timeout, long idleOutputTimeout, OutputStream stdout, OutputStream stderr, String... command)
Вспомогательный метод для выполнения системной команды, прерывания, если это занимает больше указанного времени, и перенаправления вывода в файлы, если указано. Если ERROR(/OutputStream)
предоставлены таким образом, они останутся открытыми в конце функции.
Параметры | |
---|---|
timeout | long : таймаут максимального времени ожидания в мс. 0 означает отсутствие тайм-аута. |
idleOutputTimeout | long : максимальное время ожидания вывода в выходных потоках в мс. |
stdout | OutputStream : ERROR(/OutputStream) где будет перенаправлен стандартный вывод. Может быть нулевым. |
stderr | OutputStream : ERROR(/OutputStream) куда будет перенаправлен вывод ошибки. Может быть нулевым. |
command | String : указанная системная команда и, необязательно, аргументы для выполнения. |
Возврат | |
---|---|
CommandResult | CommandResult содержащий результат выполнения команды |
runTimedCmdWithOutputMonitor
public abstract CommandResult runTimedCmdWithOutputMonitor (long timeout, long idleOutputTimeout, String... command)
Вспомогательный метод для выполнения системной команды и прерывания, если это занимает больше указанного времени. Также отслеживает активность выходных потоков, прерывая работу, если в течение определенного времени не наблюдается активности потока. Если для параметраdledleOutputTimeout установлено нулевое значение, мониторинг потока выполняться не будет.
Параметры | |
---|---|
timeout | long : максимальное время ожидания в мс. 0 означает отсутствие тайм-аута. |
idleOutputTimeout | long : максимальное время ожидания вывода в выходных потоках в мс. |
command | String : указанная системная команда и, необязательно, аргументы для выполнения. |
Возврат | |
---|---|
CommandResult | CommandResult содержащий результат выполнения команды |
runTimedCmdWithOutputMonitor
public abstract CommandResult runTimedCmdWithOutputMonitor (long timeout, long idleOutputTimeout, OutputStream stdout, OutputStream stderr, ICacheClient cacheClient, String... command)
Вспомогательный метод для выполнения системной команды с кэшированием.
Если указан cacheClient
, кэширование будет включено. Если кеш доступен, будет возвращен кешированный результат. В противном случае для выполнения команды будет использоваться runTimedCmdWithOutputMonitor(long, long, OutputStream, OutputStream, String)
а результат будет загружен для кэширования.
Параметры | |
---|---|
timeout | long : таймаут максимального времени ожидания в мс. 0 означает отсутствие тайм-аута. |
idleOutputTimeout | long : максимальное время ожидания вывода в выходных потоках в мс. |
stdout | OutputStream : ERROR(/OutputStream) где будет перенаправлен стандартный вывод. Может быть нулевым. |
stderr | OutputStream : ERROR(/OutputStream) куда будет перенаправлен вывод ошибки. Может быть нулевым. |
cacheClient | ICacheClient : экземпляр ICacheClient используемый для управления кэшированием. |
command | String : указанная системная команда и (необязательно) аргументы для exec. |
Возврат | |
---|---|
CommandResult | CommandResult содержащий результат выполнения команды. |
runTimedRetry
public abstract boolean runTimedRetry (long opTimeout, long pollInterval, int attempts, IRunUtil.IRunnableResult runnable)
Блокирует и выполняет операцию несколько раз, пока она не завершится успешно.
Параметры | |
---|---|
opTimeout | long : максимальное время ожидания в мс для одной попытки операции. |
pollInterval | long : время ожидания между повторами команд |
attempts | int : максимальное количество попыток |
runnable | IRunUtil.IRunnableResult : IRunUtil.IRunnableResult для выполнения |
Возврат | |
---|---|
boolean | true , если операция завершилась успешно до того, как были достигнуты попытки. |
runTimedRetryWithOutputMonitor
public abstract boolean runTimedRetryWithOutputMonitor (long opTimeout, long idleOutputTimeout, long pollInterval, int attempts, IRunUtil.IRunnableResult runnable)
Блокирует и выполняет операцию несколько раз, пока она не завершится успешно. Также отслеживает активность выходных потоков, прерывая работу, если в течение определенного времени не наблюдается активности потока. Если для параметраdledleOutputTimeout установлено нулевое значение, мониторинг потока выполняться не будет.
Параметры | |
---|---|
opTimeout | long : максимальное время ожидания в мс для одной попытки операции. |
idleOutputTimeout | long : максимальное время ожидания вывода в выходных потоках в мс. |
pollInterval | long : время ожидания между повторами команд |
attempts | int : максимальное количество попыток |
runnable | IRunUtil.IRunnableResult : IRunUtil.IRunnableResult для выполнения |
Возврат | |
---|---|
boolean | true , если операция завершилась успешно до того, как были достигнуты попытки. |
runTimedWithOutputMonitor
public abstract CommandStatus runTimedWithOutputMonitor (long timeout, long idleOutputTimeout, IRunUtil.IRunnableResult runnable, boolean logErrors)
Блокирует и выполняет операцию, прерывая ее, если она занимает больше указанного времени. Также отслеживает активность выходных потоков, прерывая работу, если в течение определенного времени не наблюдается активности потока. Если для параметраdledleOutputTimeout установлено нулевое значение, мониторинг потока выполняться не будет.
Параметры | |
---|---|
timeout | long : максимальное время ожидания в мс |
idleOutputTimeout | long : максимальное время ожидания вывода в выходных потоках в мс. |
runnable | IRunUtil.IRunnableResult : IRunUtil.IRunnableResult для выполнения |
logErrors | boolean : регистрировать ошибки при исключении или нет. |
Возврат | |
---|---|
CommandStatus | результат операции CommandStatus . |
setEnvVariable
public abstract void setEnvVariable (String key, String value)
Устанавливает переменную среды, которая будет использоваться при выполнении системных команд.
Параметры | |
---|---|
key | String : имя переменной. |
value | String : значение переменной. |
См. также:
setEnvVariablePriority
public abstract void setEnvVariablePriority (IRunUtil.EnvPriority priority)
Решите, будет ли при создании процесса снятие переменных среды более приоритетным, чем их установка. По умолчанию снятие имеет более высокий приоритет: это означает, что если будет предпринята попытка установить переменную с тем же именем, этого не произойдет, поскольку переменная будет сброшена. Невозможно использовать в экземпляре IRunUtil
по умолчанию.
Параметры | |
---|---|
priority | IRunUtil.EnvPriority |
setInterruptibleInFuture
public abstract void setInterruptibleInFuture (Thread thread, long timeMs)
Установите прерывание после некоторого времени ожидания. ERROR(/CommandScheduler#shutdownHard())
для принудительного прекращения работы в конечном итоге.
Параметры | |
---|---|
thread | Thread : поток, который станет прерываемым. |
timeMs | long : время ожидания перед установкой прерывания. |
setLinuxInterruptProcess
public abstract void setLinuxInterruptProcess (boolean interrupt)
Разрешить использование прерывания «kill» в Linux для процесса, выполняющегося с помощью методов #runTimed, когда он достигает тайм-аута. Невозможно использовать в экземпляре IRunUtil
по умолчанию.
Параметры | |
---|---|
interrupt | boolean |
setRedirectStderrToStdout
public abstract void setRedirectStderrToStdout (boolean redirect)
Установите стандартный поток ошибок для перенаправления в стандартный поток вывода при выполнении системных команд. Начальное значение неверно.
Параметры | |
---|---|
redirect | boolean : новое значение, указывающее, следует ли перенаправлять или нет. |
См. также:
setWorkingDir
public abstract void setWorkingDir (File dir)
Устанавливает рабочий каталог для системных команд.
Параметры | |
---|---|
dir | File : рабочий каталог |
См. также:
спать
public abstract void sleep (long time)
Вспомогательный метод для сна в течение заданного времени, игнорируя любые исключения.
Параметры | |
---|---|
time | long : мс спать. значения меньше или равные 0 будут игнорироваться |
unsetEnvVariable
public abstract void unsetEnvVariable (String key)
Сбрасывает переменную среды, поэтому системные команды выполняются без этой переменной среды.
Параметры | |
---|---|
key | String : имя переменной. |
См. также:
загрузитьКэш
public abstract void uploadCache (ICacheClient cacheClient, ExecutableActionResult actionResult)
Загружает последний ExecutableActionResult
выполненный с помощью кэшклиента.
Параметры | |
---|---|
cacheClient | ICacheClient : ICacheClient используемый для загрузки результата. |
actionResult | ExecutableActionResult : результат ExecutableActionResult для загрузки. |
Контент и образцы кода на этой странице предоставлены по лицензиям. Java и OpenJDK – это зарегистрированные товарные знаки корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2024-11-23 UTC.