IRunUtil
public interface IRunUtil
com.android.tradefed.util.IRunUtil |
Interfejs do wykonywania operacji czasowych i poleceń systemowych.
Streszczenie
Klasy zagnieżdżone | |
---|---|
interface | IRunUtil.IRunnableResult Interfejs do asynchronicznego wykonywania operacji, która zwraca stan logiczny. |
Metody publiczne | |
---|---|
abstract void | allowInterrupt (boolean allow) Zezwala/nie zezwala na wykonywanie przerwań w bieżącym wątku. |
abstract void | interrupt (Thread thread, String message, ErrorIdentifier errorId) Przerywa trwające/nadchodzące operacje uruchamiania w danym wątku. |
abstract void | interrupt (Thread thread, String message) Przerywa trwające/nadchodzące operacje uruchamiania w danym wątku. |
abstract boolean | isInterruptAllowed () Podaj status przerwania RunUtil. |
abstract Process | runCmdInBackground (Redirect redirect, command) runCmdInBackground (Redirect redirect, command) Alternatywna metoda |
abstract Process | runCmdInBackground ( command) runCmdInBackground ( command) Alternatywna metoda |
abstract Process | runCmdInBackground ( command, OutputStream output) runCmdInBackground ( command, OutputStream output) Uruchamianie polecenia z |
abstract Process | runCmdInBackground (String... command) Metoda pomocnika do asynchronicznego wykonywania polecenia systemowego. |
abstract Process | runCmdInBackground (Redirect redirect, String... command) Metoda pomocnika do asynchronicznego wykonywania polecenia systemowego. |
abstract boolean | runEscalatingTimedRetry (long opTimeout, long initialPollInterval, long maxPollInterval, long maxTime, IRunUtil.IRunnableResult runnable) Zablokuj i wykonaj operację wiele razy, aż zakończy się sukcesem. |
abstract boolean | runFixedTimedRetry (long opTimeout, long pollInterval, long maxTime, IRunUtil.IRunnableResult runnable) Zablokuj i wykonaj operację wiele razy, aż zakończy się sukcesem. |
abstract CommandStatus | runTimed (long timeout, IRunUtil.IRunnableResult runnable, boolean logErrors) Blokuje i wykonuje operację, przerywając ją, jeśli trwa dłużej niż określony czas. |
abstract CommandResult | runTimedCmd (long timeout, OutputStream stdout, OutputStream stderr, String... command) Metoda pomocnika, aby wykonać polecenie systemowe, przerwać, jeśli trwa dłużej niż określony czas, i przekierować dane wyjściowe do plików, jeśli określono. |
abstract CommandResult | runTimedCmd (long timeout, String... command) Metoda pomocnika do wykonania polecenia systemowego i przerwania, jeśli trwa to dłużej niż określony czas. |
abstract CommandResult | runTimedCmdRetry (long timeout, long retryInterval, int attempts, String... command) Metoda pomocnika do wykonania polecenia systemowego i przerwania, jeśli trwa to dłużej niż określony czas. |
abstract CommandResult | runTimedCmdSilently (long timeout, String... command) Metoda pomocnika do wykonania polecenia systemowego i przerwania, jeśli trwa to dłużej niż określony czas. |
abstract CommandResult | runTimedCmdSilentlyRetry (long timeout, long retryInterval, int attempts, String... command) Metoda pomocnika do wykonania polecenia systemowego i przerwania, jeśli trwa to dłużej niż określony czas. |
abstract CommandResult | runTimedCmdWithInput (long timeout, String input, File stdoutFile, File stderrFile, String... command) Metoda pomocnika, aby wykonać polecenie systemowe, przerwać, jeśli trwa dłużej niż określony czas, i przekierować dane wyjściowe do plików, jeśli określono. |
abstract CommandResult | runTimedCmdWithInput (long timeout, String input, String... command) Metoda pomocnika do wykonania polecenia systemowego, które wymaga wejścia stdin i przerwania, jeśli trwa dłużej niż określony czas. |
abstract CommandResult | runTimedCmdWithInput (long timeout, String input, command) runTimedCmdWithInput (long timeout, String input, command) Metoda pomocnika do wykonania polecenia systemowego, które wymaga wejścia stdin i przerwania, jeśli trwa dłużej niż określony czas. |
abstract CommandResult | runTimedCmdWithInputRedirect (long timeout, File inputRedirect, String... command) Metoda pomocnika do wykonania polecenia systemowego, które wymaga przekierowania standardowego wejścia z pliku i przerwania, jeśli trwa to dłużej niż określony czas. |
abstract boolean | runTimedRetry (long opTimeout, long pollInterval, int attempts, IRunUtil.IRunnableResult runnable) Zablokuj i wykonaj operację wiele razy, aż zakończy się sukcesem. |
abstract void | setEnvVariable (String key, String value) Ustawia zmienną środowiskową, która ma być używana podczas uruchamiania poleceń systemowych. |
abstract void | setEnvVariablePriority ( IRunUtil.EnvPriority priority) Zdecyduj, czy podczas tworzenia procesu usunięcie ustawień zmiennych środowiskowych ma wyższy priorytet niż ich ustawienie. |
abstract void | setInterruptibleInFuture (Thread thread, long timeMs) Ustaw jako przerywalne po pewnym czasie oczekiwania. |
abstract void | setLinuxInterruptProcess (boolean interrupt) Zezwalaj na używanie przerywania linuksowego „zabicia” w procesie uruchomionym za pomocą metod #runTimed, gdy przekroczy limit czasu. |
abstract void | setRedirectStderrToStdout (boolean redirect) Ustaw standardowy strumień błędów, aby przekierowywał do standardowego strumienia wyjściowego podczas uruchamiania poleceń systemowych. |
abstract void | setWorkingDir (File dir) Ustawia katalog roboczy dla poleceń systemowych. |
abstract void | sleep (long time) Metoda pomocnicza do uśpienia na określony czas, ignorując wszelkie wyjątki. |
abstract void | unsetEnvVariable (String key) Anuluje ustawienie zmiennej środowiskowej, więc polecenia systemowe działają bez tej zmiennej środowiskowej. |
Metody publiczne
Zezwól na przerwanie
public abstract void allowInterrupt (boolean allow)
Zezwala/nie zezwala na wykonywanie przerwań w bieżącym wątku. Jeśli jest to dozwolone, operacje uruchamiania bieżącego wątku mogą być przerywane z innych wątków za pomocą metody interrupt(Thread, String)
.
Parametry | |
---|---|
allow | boolean : czy zezwolić na przerwania wykonywania w bieżącym wątku. |
przerywać
public abstract void interrupt (Thread thread, String message, ErrorIdentifier errorId)
Przerywa trwające/nadchodzące operacje uruchamiania w danym wątku. Operacje uruchamiania w danym wątku zgłoszą RunInterruptedException
.
Parametry | |
---|---|
message | String : komunikat dotyczący RunInterruptedException . |
errorId | ErrorIdentifier : Reprezentuje przyczynę przerwania, jeśli jest znana. |
przerywać
public abstract void interrupt (Thread thread, String message)
Przerywa trwające/nadchodzące operacje uruchamiania w danym wątku. Operacje uruchamiania w danym wątku zgłoszą RunInterruptedException
.
Parametry | |
---|---|
message | String : komunikat dotyczący RunInterruptedException . |
isInterruptAllowed
public abstract boolean isInterruptAllowed ()
Podaj status przerwania RunUtil.
Zwroty | |
---|---|
boolean | true, jeśli Run można przerwać, w przeciwnym razie false. |
uruchomCmdInBackground
public abstract Process runCmdInBackground (Redirect redirect,command)
Alternatywna metoda runCmdInBackground(String)
, która akceptuje argumenty polecenia w postaci ERROR(/List)
.
Parametry | |
---|---|
redirect | Redirect : ERROR(/Redirect) do zastosowania do ERROR(/ProcessBuilder) . |
command | ERROR(/List) zawierający określone polecenie systemowe i opcjonalnie argumenty do exec |
Zwroty | |
---|---|
Process | ERROR(/Process) wykonanego polecenia |
Rzuty | |
---|---|
| jeśli polecenie nie zostało uruchomione |
uruchomCmdInBackground
public abstract Process runCmdInBackground (command)
Alternatywna metoda runCmdInBackground(String)
, która akceptuje argumenty polecenia w postaci ERROR(/List)
.
Parametry | |
---|---|
command | ERROR(/List) zawierający określone polecenie systemowe i opcjonalnie argumenty do exec |
Zwroty | |
---|---|
Process | ERROR(/Process) wykonanego polecenia |
Rzuty | |
---|---|
| jeśli polecenie nie zostało uruchomione |
uruchomCmdInBackground
public abstract Process runCmdInBackground (command, OutputStream output)
Uruchamianie polecenia z ERROR(/OutputStream)
rejestruje dane wyjściowe polecenia. Stdout i stderr są ze sobą połączone.
Parametry | |
---|---|
command | |
output | OutputStream : OutputStream do zapisania danych wyjściowych |
Zwroty | |
---|---|
Process | ERROR(/Process) uruchamiający polecenie |
Rzuty | |
---|---|
| IOException |
uruchomCmdInBackground
public abstract Process runCmdInBackground (String... command)
Metoda pomocnika do asynchronicznego wykonywania polecenia systemowego.
Powróci natychmiast po uruchomieniu polecenia.
Parametry | |
---|---|
command | String : określone polecenie systemowe i opcjonalnie argumenty do exec |
Zwroty | |
---|---|
Process | ERROR(/Process) wykonanego polecenia |
Rzuty | |
---|---|
| jeśli polecenie nie zostało uruchomione |
uruchomCmdInBackground
public abstract Process runCmdInBackground (Redirect redirect, String... command)
Metoda pomocnika do asynchronicznego wykonywania polecenia systemowego.
Powróci natychmiast po uruchomieniu polecenia.
Parametry | |
---|---|
redirect | Redirect : ERROR(/Redirect) do zastosowania do ERROR(/ProcessBuilder) . |
command | String : określone polecenie systemowe i opcjonalnie argumenty do exec |
Zwroty | |
---|---|
Process | ERROR(/Process) wykonanego polecenia |
Rzuty | |
---|---|
| jeśli polecenie nie zostało uruchomione |
runEscalatingTimedPonów próbę
public abstract boolean runEscalatingTimedRetry (long opTimeout, long initialPollInterval, long maxPollInterval, long maxTime, IRunUtil.IRunnableResult runnable)
Zablokuj i wykonaj operację wiele razy, aż zakończy się sukcesem.
Wykładniczo zwiększ czas oczekiwania między próbami wykonania operacji. Jest to przeznaczone do użycia podczas wykonywania operacji, takich jak odpytywanie serwera, aby dać mu czas na odzyskanie w przypadku tymczasowej awarii.Parametry | |
---|---|
opTimeout | long : maksymalny czas oczekiwania w ms na pojedynczą próbę operacji |
initialPollInterval | long : początkowy czas oczekiwania między próbami wykonania operacji |
maxPollInterval | long : maksymalny czas oczekiwania między próbami wykonania operacji |
maxTime | long : całkowity przybliżony maksymalny czas kontynuowania próby wykonania operacji |
runnable | IRunUtil.IRunnableResult : IRunUtil.IRunnableResult do wykonania |
Zwroty | |
---|---|
boolean | true Jeśli operacja zakończyła się pomyślnie przed upływem maxTime |
runFixedTimedPonów próbę
public abstract boolean runFixedTimedRetry (long opTimeout, long pollInterval, long maxTime, IRunUtil.IRunnableResult runnable)
Zablokuj i wykonaj operację wiele razy, aż zakończy się sukcesem.
Parametry | |
---|---|
opTimeout | long : maksymalny czas oczekiwania w ms na pojedynczą próbę operacji |
pollInterval | long : początkowy czas oczekiwania między próbami wykonania operacji |
maxTime | long : całkowity przybliżony maksymalny czas kontynuowania próby wykonania operacji |
runnable | IRunUtil.IRunnableResult : IRunUtil.IRunnableResult do wykonania |
Zwroty | |
---|---|
boolean | true Jeśli operacja zakończyła się pomyślnie przed upływem maxTime |
runTimed
public abstract CommandStatus runTimed (long timeout, IRunUtil.IRunnableResult runnable, boolean logErrors)
Blokuje i wykonuje operację, przerywając ją, jeśli trwa dłużej niż określony czas.
Parametry | |
---|---|
timeout | long : maksymalny czas oczekiwania w ms |
runnable | IRunUtil.IRunnableResult : IRunUtil.IRunnableResult do wykonania |
logErrors | boolean : rejestruj błędy w wyjątku lub nie. |
Zwroty | |
---|---|
CommandStatus | wynik operacji CommandStatus . |
runTimedCmd
public abstract CommandResult runTimedCmd (long timeout, OutputStream stdout, OutputStream stderr, String... command)
Metoda pomocnika, aby wykonać polecenie systemowe, przerwać, jeśli trwa dłużej niż określony czas, i przekierować dane wyjściowe do plików, jeśli określono. Gdy ERROR(/OutputStream)
zostaną podane w ten sposób, pozostaną otwarte na końcu funkcji.
Parametry | |
---|---|
timeout | long : timeout maksymalny czas oczekiwania w ms. 0 oznacza brak limitu czasu. |
stdout | OutputStream : ERROR(/OutputStream) gdzie standardowe wyjście zostanie przekierowane. Może być zerowy. |
stderr | OutputStream : ERROR(/OutputStream) gdzie wyjście błędu zostanie przekierowane. Może być zerowy. |
command | String : określone polecenie systemowe i opcjonalnie argumenty do exec |
Zwroty | |
---|---|
CommandResult | CommandResult zawierający wynik wykonania polecenia |
runTimedCmd
public abstract CommandResult runTimedCmd (long timeout, String... command)
Metoda pomocnika do wykonania polecenia systemowego i przerwania, jeśli trwa to dłużej niż określony czas.
Parametry | |
---|---|
timeout | long : maksymalny czas oczekiwania w ms. 0 oznacza brak limitu czasu. |
command | String : określone polecenie systemowe i opcjonalnie argumenty do exec |
Zwroty | |
---|---|
CommandResult | CommandResult zawierający wynik wykonania polecenia |
runTimedCmdPonów próbę
public abstract CommandResult runTimedCmdRetry (long timeout, long retryInterval, int attempts, String... command)
Metoda pomocnika do wykonania polecenia systemowego i przerwania, jeśli trwa to dłużej niż określony czas.
Parametry | |
---|---|
timeout | long : maksymalny czas oczekiwania w ms na każdą próbę |
retryInterval | long : czas oczekiwania między kolejnymi próbami wykonania polecenia |
attempts | int : maksymalna liczba prób |
command | String : określone polecenie systemowe i opcjonalnie argumenty do exec |
Zwroty | |
---|---|
CommandResult | CommandResult zawierający wynik wykonania polecenia |
runTimedCmdCicho
public abstract CommandResult runTimedCmdSilently (long timeout, String... command)
Metoda pomocnika do wykonania polecenia systemowego i przerwania, jeśli trwa to dłużej niż określony czas. Podobny do runTimedCmd(long, String)
, ale nie rejestruje żadnych błędów w przypadku wyjątku.
Parametry | |
---|---|
timeout | long : maksymalny czas oczekiwania w ms |
command | String : określone polecenie systemowe i opcjonalnie argumenty do exec |
Zwroty | |
---|---|
CommandResult | CommandResult zawierający wynik wykonania polecenia |
runTimedCmdSilentlySpróbuj ponownie
public abstract CommandResult runTimedCmdSilentlyRetry (long timeout, long retryInterval, int attempts, String... command)
Metoda pomocnika do wykonania polecenia systemowego i przerwania, jeśli trwa to dłużej niż określony czas. Podobny do runTimedCmdRetry(long, long, int, String[])
, ale nie rejestruje żadnych błędów w przypadku wyjątku.
Parametry | |
---|---|
timeout | long : maksymalny czas oczekiwania w ms |
retryInterval | long : czas oczekiwania między kolejnymi próbami wykonania polecenia |
attempts | int : maksymalna liczba prób |
command | String : określone polecenie systemowe i opcjonalnie argumenty do exec |
Zwroty | |
---|---|
CommandResult | CommandResult zawierający wynik wykonania polecenia |
runTimedCmdWithInput
public abstract CommandResult runTimedCmdWithInput (long timeout, String input, File stdoutFile, File stderrFile, String... command)
Metoda pomocnika, aby wykonać polecenie systemowe, przerwać, jeśli trwa dłużej niż określony czas, i przekierować dane wyjściowe do plików, jeśli określono.
Parametry | |
---|---|
timeout | long : timeout maksymalny czas oczekiwania w ms. 0 oznacza brak limitu czasu. |
input | String : wejście stdin do przekazania do procesu |
stdoutFile | File : ERROR(/File) gdzie zostanie przekierowane standardowe wyjście. Może być zerowy. |
stderrFile | File : ERROR(/File) gdzie zostanie przekierowany wynik błędu. Może być zerowy. |
command | String : określone polecenie systemowe i opcjonalnie argumenty do exec |
Zwroty | |
---|---|
CommandResult | CommandResult zawierający wynik wykonania polecenia |
runTimedCmdWithInput
public abstract CommandResult runTimedCmdWithInput (long timeout, String input, String... command)
Metoda pomocnika do wykonania polecenia systemowego, które wymaga wejścia stdin i przerwania, jeśli trwa dłużej niż określony czas.
Parametry | |
---|---|
timeout | long : maksymalny czas oczekiwania w ms |
input | String : wejście stdin do przekazania do procesu |
command | String : określone polecenie systemowe i opcjonalnie argumenty do exec |
Zwroty | |
---|---|
CommandResult | CommandResult zawierający wynik wykonania polecenia |
runTimedCmdWithInput
public abstract CommandResult runTimedCmdWithInput (long timeout, String input,command)
Metoda pomocnika do wykonania polecenia systemowego, które wymaga wejścia stdin i przerwania, jeśli trwa dłużej niż określony czas.
Parametry | |
---|---|
timeout | long : maksymalny czas oczekiwania w ms |
input | String : wejście stdin do przekazania do procesu |
command | ERROR(/List) zawierający polecenie systemowe i opcjonalnie argumenty do exec |
Zwroty | |
---|---|
CommandResult | CommandResult zawierający wynik wykonania polecenia |
runTimedCmdWithInputRedirect
public abstract CommandResult runTimedCmdWithInputRedirect (long timeout, File inputRedirect, String... command)
Metoda pomocnika do wykonania polecenia systemowego, które wymaga przekierowania standardowego wejścia z pliku i przerwania, jeśli trwa to dłużej niż określony czas.
Parametry | |
---|---|
timeout | long : maksymalny czas oczekiwania w ms |
inputRedirect | File : ERROR(/File) do przekierowania jako standardowe wejście przy użyciu ERROR(/ProcessBuilder#redirectInput()) . Jeśli null, standardowe wejście nie zostanie przekierowane. |
command | String : określone polecenie systemowe i opcjonalnie argumenty do exec |
Zwroty | |
---|---|
CommandResult | CommandResult zawierający wynik wykonania polecenia |
runTimedPonów próbę
public abstract boolean runTimedRetry (long opTimeout, long pollInterval, int attempts, IRunUtil.IRunnableResult runnable)
Zablokuj i wykonaj operację wiele razy, aż zakończy się sukcesem.
Parametry | |
---|---|
opTimeout | long : maksymalny czas oczekiwania w ms na jedną próbę operacji |
pollInterval | long : czas oczekiwania między kolejnymi próbami wykonania polecenia |
attempts | int : maksymalna liczba prób |
runnable | IRunUtil.IRunnableResult : IRunUtil.IRunnableResult do wykonania |
Zwroty | |
---|---|
boolean | true Jeśli operacja zakończyła się pomyślnie przed osiągnięciem prób. |
setEnvVariable
public abstract void setEnvVariable (String key, String value)
Ustawia zmienną środowiskową, która ma być używana podczas uruchamiania poleceń systemowych.
Parametry | |
---|---|
key | String : nazwa zmiennej |
value | String : wartość zmiennej |
Zobacz też:
setEnvVariablePriority
public abstract void setEnvVariablePriority (IRunUtil.EnvPriority priority)
Zdecyduj, czy podczas tworzenia procesu usunięcie ustawień zmiennych środowiskowych ma wyższy priorytet niż ich ustawienie. Domyślnie rozbrojenie ma wyższy priorytet: co oznacza, że jeśli zostanie podjęta próba ustawienia zmiennej o tej samej nazwie, nie nastąpi to, ponieważ zmienna zostanie usunięta. Nie można użyć w domyślnej instancji IRunUtil
.
Parametry | |
---|---|
priority | IRunUtil.EnvPriority |
setInterruptibleInFuture
public abstract void setInterruptibleInFuture (Thread thread, long timeMs)
Ustaw jako przerywalne po pewnym czasie oczekiwania. ERROR(/CommandScheduler#shutdownHard())
, aby wymusić, że ostatecznie zakończymy.
Parametry | |
---|---|
thread | Thread : wątek, który zostanie przerwany. |
timeMs | long : czas oczekiwania przed ustawieniem przerywalności. |
setLinuxInterruptProcess
public abstract void setLinuxInterruptProcess (boolean interrupt)
Zezwalaj na używanie przerywania linuksowego „zabicia” w procesie uruchomionym za pomocą metod #runTimed, gdy przekroczy limit czasu. Nie można użyć w domyślnej instancji IRunUtil
.
Parametry | |
---|---|
interrupt | boolean |
setRedirectStderrToStdout
public abstract void setRedirectStderrToStdout (boolean redirect)
Ustaw standardowy strumień błędów, aby przekierowywał do standardowego strumienia wyjściowego podczas uruchamiania poleceń systemowych. Wartość początkowa to fałsz.
Parametry | |
---|---|
redirect | boolean : nowa wartość określająca, czy przekierować, czy nie |
setWorkingDir
public abstract void setWorkingDir (File dir)
Ustawia katalog roboczy dla poleceń systemowych.
Parametry | |
---|---|
dir | File : katalog roboczy |
Zobacz też:
spać
public abstract void sleep (long time)
Metoda pomocnicza do uśpienia na określony czas, ignorując wszelkie wyjątki.
Parametry | |
---|---|
time | long : ms spać. wartości mniejsze lub równe 0 będą ignorowane |
unsetEnvVariable
public abstract void unsetEnvVariable (String key)
Anuluje ustawienie zmiennej środowiskowej, więc polecenia systemowe działają bez tej zmiennej środowiskowej.
Parametry | |
---|---|
key | String : nazwa zmiennej |
Zobacz też:
Treść strony i umieszczone na niej fragmenty kodu podlegają licencjom opisanym w Licencji na treści. Java i OpenJDK są znakami towarowymi lub zastrzeżonymi znakami towarowymi należącymi do firmy Oracle lub jej podmiotów stowarzyszonych.
Ostatnia aktualizacja: 2023-03-30 UTC.