IRunUtil
public interface IRunUtil
com.android.tradefed.util.IRunUtil |
Schnittstelle zum Ausführen von zeitgesteuerten Operationen und Systembefehlen.
Zusammenfassung
Verschachtelte Klassen | |
---|---|
interface | IRunUtil.IRunnableResult Eine Schnittstelle zum asynchronen Ausführen einer Operation, die einen booleschen Status zurückgibt. |
Öffentliche Methoden | |
---|---|
abstract void | allowInterrupt (boolean allow) Erlaubt/verbietet die Ausführung von Interrupts für den aktuellen Thread. |
abstract void | interrupt (Thread thread, String message, ErrorIdentifier errorId) Unterbricht die laufenden/anstehenden Ausführungsvorgänge für den angegebenen Thread. |
abstract void | interrupt (Thread thread, String message) Unterbricht die laufenden/anstehenden Ausführungsvorgänge für den angegebenen Thread. |
abstract boolean | isInterruptAllowed () Geben Sie den Interrupt-Status von RunUtil an. |
abstract Process | runCmdInBackground (Redirect redirect, command) runCmdInBackground (Redirect redirect, command) Eine alternative |
abstract Process | runCmdInBackground ( command) runCmdInBackground ( command) Eine alternative |
abstract Process | runCmdInBackground ( command, OutputStream output) runCmdInBackground ( command, OutputStream output) Ausführen des Befehls mit einem |
abstract Process | runCmdInBackground (String... command) Hilfsmethode zum asynchronen Ausführen eines Systembefehls. |
abstract Process | runCmdInBackground (Redirect redirect, String... command) Hilfsmethode zum asynchronen Ausführen eines Systembefehls. |
abstract boolean | runEscalatingTimedRetry (long opTimeout, long initialPollInterval, long maxPollInterval, long maxTime, IRunUtil.IRunnableResult runnable) Blockiert und führt eine Operation mehrmals aus, bis sie erfolgreich ist. |
abstract boolean | runFixedTimedRetry (long opTimeout, long pollInterval, long maxTime, IRunUtil.IRunnableResult runnable) Blockiert und führt eine Operation mehrmals aus, bis sie erfolgreich ist. |
abstract CommandStatus | runTimed (long timeout, IRunUtil.IRunnableResult runnable, boolean logErrors) Blockiert und führt eine Operation aus und bricht ab, wenn sie länger als eine angegebene Zeit dauert. |
abstract CommandResult | runTimedCmd (long timeout, OutputStream stdout, OutputStream stderr, String... command) Hilfsmethode zum Ausführen eines Systembefehls, zum Abbrechen, wenn dies länger als eine angegebene Zeit dauert, und zum Umleiten der Ausgabe in Dateien, falls angegeben. |
abstract CommandResult | runTimedCmd (long timeout, String... command) Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn es länger als eine angegebene Zeit dauert. |
abstract CommandResult | runTimedCmdRetry (long timeout, long retryInterval, int attempts, String... command) Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn es länger als eine angegebene Zeit dauert. |
abstract CommandResult | runTimedCmdSilently (long timeout, String... command) Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn es länger als eine angegebene Zeit dauert. |
abstract CommandResult | runTimedCmdSilentlyRetry (long timeout, long retryInterval, int attempts, String... command) Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn es länger als eine angegebene Zeit dauert. |
abstract CommandResult | runTimedCmdWithInput (long timeout, String input, File stdoutFile, File stderrFile, String... command) Hilfsmethode zum Ausführen eines Systembefehls, zum Abbrechen, wenn dies länger als eine angegebene Zeit dauert, und zum Umleiten der Ausgabe in Dateien, falls angegeben. |
abstract CommandResult | runTimedCmdWithInput (long timeout, String input, String... command) Hilfsmethode zum Ausführen eines Systembefehls, der eine stdin-Eingabe erfordert, und zum Abbrechen, wenn dies länger als eine angegebene Zeit dauert. |
abstract CommandResult | runTimedCmdWithInput (long timeout, String input, command) runTimedCmdWithInput (long timeout, String input, command) Hilfsmethode zum Ausführen eines Systembefehls, der eine stdin-Eingabe erfordert, und zum Abbrechen, wenn dies länger als eine angegebene Zeit dauert. |
abstract CommandResult | runTimedCmdWithInputRedirect (long timeout, File inputRedirect, String... command) Hilfsmethode zum Ausführen eines Systembefehls, der das Umleiten von Stdin aus einer Datei erfordert, und das Abbrechen, wenn es länger als eine angegebene Zeit dauert. |
abstract boolean | runTimedRetry (long opTimeout, long pollInterval, int attempts, IRunUtil.IRunnableResult runnable) Blockiert und führt eine Operation mehrmals aus, bis sie erfolgreich ist. |
abstract void | setEnvVariable (String key, String value) Legt eine Umgebungsvariable fest, die beim Ausführen von Systembefehlen verwendet werden soll. |
abstract void | setEnvVariablePriority ( IRunUtil.EnvPriority priority) Entscheiden Sie, ob beim Erstellen eines Prozesses das Deaktivieren der Umgebungsvariable eine höhere Priorität hat als das Setzen. |
abstract void | setInterruptibleInFuture (Thread thread, long timeMs) Nach einiger Wartezeit als unterbrechbar setzen. |
abstract void | setLinuxInterruptProcess (boolean interrupt) Erlauben Sie die Verwendung von Linux-'Kill'-Unterbrechungen für Prozesse, die durch #runTimed-Methoden ausgeführt werden, wenn eine Zeitüberschreitung erreicht wird. |
abstract void | setRedirectStderrToStdout (boolean redirect) Stellen Sie den Standardfehlerstream so ein, dass er beim Ausführen von Systembefehlen zum Standardausgabestream umgeleitet wird. |
abstract void | setWorkingDir (File dir) Legt das Arbeitsverzeichnis für Systembefehle fest. |
abstract void | sleep (long time) Hilfsmethode zum Schlafen für eine bestimmte Zeit, wobei alle Ausnahmen ignoriert werden. |
abstract void | unsetEnvVariable (String key) Setzt eine Umgebungsvariable zurück, sodass die Systembefehle ohne diese Umgebungsvariable ausgeführt werden. |
Öffentliche Methoden
erlaubenInterrupt
public abstract void allowInterrupt (boolean allow)
Erlaubt/verbietet die Ausführung von Interrupts für den aktuellen Thread. Wenn dies zulässig ist, können Ausführungsvorgänge des aktuellen Threads von anderen Threads über die Methode interrupt(Thread, String)
unterbrochen werden.
Parameter | |
---|---|
allow | boolean : ob Laufunterbrechungen für den aktuellen Thread zugelassen werden sollen. |
unterbrechen
public abstract void interrupt (Thread thread, String message, ErrorIdentifier errorId)
Unterbricht die laufenden/anstehenden Ausführungsvorgänge für den angegebenen Thread. Die Ausführungsvorgänge für den angegebenen Thread lösen RunInterruptedException
aus.
Parameter | |
---|---|
message | String : die Nachricht für RunInterruptedException . |
errorId | ErrorIdentifier : Stellt die Ursache der Unterbrechung dar, sofern bekannt. |
unterbrechen
public abstract void interrupt (Thread thread, String message)
Unterbricht die laufenden/anstehenden Ausführungsvorgänge für den angegebenen Thread. Die Ausführungsvorgänge für den angegebenen Thread lösen RunInterruptedException
aus.
Parameter | |
---|---|
message | String : die Nachricht für RunInterruptedException . |
isInterruptAllowed
public abstract boolean isInterruptAllowed ()
Geben Sie den Interrupt-Status von RunUtil an.
Kehrt zurück | |
---|---|
boolean | true, wenn der Run unterbrochen werden kann, andernfalls false. |
runCmdInBackground
public abstract Process runCmdInBackground (Redirect redirect,command)
Eine alternative runCmdInBackground(String)
-Methode, die die Befehlsargumente in ERROR(/List)
-Form akzeptiert.
Parameter | |
---|---|
redirect | Redirect : Der ERROR(/Redirect) der auf ERROR(/ProcessBuilder) angewendet werden soll. |
command | ERROR(/List) enthält den angegebenen Systembefehl und optional Argumente für exec |
Kehrt zurück | |
---|---|
Process | der ERROR(/Process) des ausgeführten Befehls |
Wirft | |
---|---|
| wenn der Befehl nicht ausgeführt werden konnte |
runCmdInBackground
public abstract Process runCmdInBackground (command)
Eine alternative runCmdInBackground(String)
-Methode, die die Befehlsargumente in ERROR(/List)
-Form akzeptiert.
Parameter | |
---|---|
command | ERROR(/List) enthält den angegebenen Systembefehl und optional Argumente für exec |
Kehrt zurück | |
---|---|
Process | der ERROR(/Process) des ausgeführten Befehls |
Wirft | |
---|---|
| wenn der Befehl nicht ausgeführt werden konnte |
runCmdInBackground
public abstract Process runCmdInBackground (command, OutputStream output)
Ausführen des Befehls mit einem ERROR(/OutputStream)
protokolliert die Ausgabe des Befehls. Stdout und stderr werden zusammengeführt.
Parameter | |
---|---|
command | |
output | OutputStream : der OutputStream zum Speichern der Ausgabe |
Kehrt zurück | |
---|---|
Process | der ERROR(/Process) führt den Befehl aus |
Wirft | |
---|---|
| IOException |
runCmdInBackground
public abstract Process runCmdInBackground (String... command)
Hilfsmethode zum asynchronen Ausführen eines Systembefehls.
Wird sofort nach dem Start des Befehls zurückgegeben.
Parameter | |
---|---|
command | String : der angegebene Systembefehl und optional Argumente für exec |
Kehrt zurück | |
---|---|
Process | der ERROR(/Process) des ausgeführten Befehls |
Wirft | |
---|---|
| wenn der Befehl nicht ausgeführt werden konnte |
runCmdInBackground
public abstract Process runCmdInBackground (Redirect redirect, String... command)
Hilfsmethode zum asynchronen Ausführen eines Systembefehls.
Wird sofort nach dem Start des Befehls zurückgegeben.
Parameter | |
---|---|
redirect | Redirect : Der ERROR(/Redirect) der auf ERROR(/ProcessBuilder) angewendet werden soll. |
command | String : der angegebene Systembefehl und optional Argumente für exec |
Kehrt zurück | |
---|---|
Process | der ERROR(/Process) des ausgeführten Befehls |
Wirft | |
---|---|
| wenn der Befehl nicht ausgeführt werden konnte |
runEscalatingTimedRetry
public abstract boolean runEscalatingTimedRetry (long opTimeout, long initialPollInterval, long maxPollInterval, long maxTime, IRunUtil.IRunnableResult runnable)
Blockiert und führt eine Operation mehrmals aus, bis sie erfolgreich ist.
Erhöhen Sie die Wartezeit zwischen den Vorgangsversuchen exponentiell. Dies soll verwendet werden, wenn eine Operation wie das Abfragen eines Servers durchgeführt wird, um ihm Zeit zum Wiederherstellen zu geben, falls er vorübergehend ausfällt.Parameter | |
---|---|
opTimeout | long : Maximale Wartezeit in ms für einen einzelnen Vorgangsversuch |
initialPollInterval | long : anfängliche Wartezeit zwischen den Operationsversuchen |
maxPollInterval | long : die maximale Wartezeit zwischen den Operationsversuchen |
maxTime | long : die ungefähre maximale Gesamtzeit, um den Vorgang fortzusetzen |
runnable | IRunUtil.IRunnableResult : IRunUtil.IRunnableResult zum Ausführen |
Kehrt zurück | |
---|---|
boolean | true , wenn der Vorgang erfolgreich abgeschlossen wurde, bevor maxTime abgelaufen ist |
runFixedTimedRetry
public abstract boolean runFixedTimedRetry (long opTimeout, long pollInterval, long maxTime, IRunUtil.IRunnableResult runnable)
Blockiert und führt eine Operation mehrmals aus, bis sie erfolgreich ist.
Parameter | |
---|---|
opTimeout | long : Maximale Wartezeit in ms für einen einzelnen Vorgangsversuch |
pollInterval | long : anfängliche Wartezeit zwischen den Operationsversuchen |
maxTime | long : die ungefähre maximale Gesamtzeit, um den Vorgang fortzusetzen |
runnable | IRunUtil.IRunnableResult : IRunUtil.IRunnableResult zum Ausführen |
Kehrt zurück | |
---|---|
boolean | true , wenn der Vorgang erfolgreich abgeschlossen wurde, bevor maxTime abgelaufen ist |
runTimed
public abstract CommandStatus runTimed (long timeout, IRunUtil.IRunnableResult runnable, boolean logErrors)
Blockiert und führt eine Operation aus und bricht ab, wenn sie länger als eine angegebene Zeit dauert.
Parameter | |
---|---|
timeout | long : maximale Wartezeit in ms |
runnable | IRunUtil.IRunnableResult : IRunUtil.IRunnableResult zum Ausführen |
logErrors | boolean : Fehler bei Ausnahme protokollieren oder nicht. |
Kehrt zurück | |
---|---|
CommandStatus | das CommandStatus Ergebnis der Operation. |
runTimedCmd
public abstract CommandResult runTimedCmd (long timeout, OutputStream stdout, OutputStream stderr, String... command)
Hilfsmethode zum Ausführen eines Systembefehls, zum Abbrechen, wenn dies länger als eine angegebene Zeit dauert, und zum Umleiten der Ausgabe in Dateien, falls angegeben. Wenn ERROR(/OutputStream)
auf diese Weise bereitgestellt werden, bleiben sie am Ende der Funktion offen.
Parameter | |
---|---|
timeout | long : Timeout maximale Wartezeit in ms. 0 bedeutet kein Timeout. |
stdout | OutputStream : ERROR(/OutputStream) wo die Standardausgabe umgeleitet wird. Kann null sein. |
stderr | OutputStream : ERROR(/OutputStream) wo die Fehlerausgabe umgeleitet wird. Kann null sein. |
command | String : der angegebene Systembefehl und optional Argumente für exec |
Kehrt zurück | |
---|---|
CommandResult | ein CommandResult , das das Ergebnis der Befehlsausführung enthält |
runTimedCmd
public abstract CommandResult runTimedCmd (long timeout, String... command)
Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn es länger als eine angegebene Zeit dauert.
Parameter | |
---|---|
timeout | long : maximale Wartezeit in ms. 0 bedeutet kein Timeout. |
command | String : der angegebene Systembefehl und optional Argumente für exec |
Kehrt zurück | |
---|---|
CommandResult | ein CommandResult , das das Ergebnis der Befehlsausführung enthält |
runTimedCmdRetry
public abstract CommandResult runTimedCmdRetry (long timeout, long retryInterval, int attempts, String... command)
Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn es länger als eine angegebene Zeit dauert.
Parameter | |
---|---|
timeout | long : maximale Wartezeit in ms für jeden Versuch |
retryInterval | long : Wartezeit zwischen Befehlswiederholungen |
attempts | int : die maximale Anzahl von Versuchen |
command | String : der angegebene Systembefehl und optional Argumente für exec |
Kehrt zurück | |
---|---|
CommandResult | ein CommandResult , das das Ergebnis der Befehlsausführung enthält |
runTimedCmdSilently
public abstract CommandResult runTimedCmdSilently (long timeout, String... command)
Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn es länger als eine angegebene Zeit dauert. Ähnlich wie runTimedCmd(long, String)
, protokolliert jedoch keine Fehler bei einer Ausnahme.
Parameter | |
---|---|
timeout | long : maximale Wartezeit in ms |
command | String : der angegebene Systembefehl und optional Argumente für exec |
Kehrt zurück | |
---|---|
CommandResult | ein CommandResult , das das Ergebnis der Befehlsausführung enthält |
runTimedCmdSilentlyRetry
public abstract CommandResult runTimedCmdSilentlyRetry (long timeout, long retryInterval, int attempts, String... command)
Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn es länger als eine angegebene Zeit dauert. Ähnlich wie runTimedCmdRetry(long, long, int, String[])
, protokolliert jedoch keine Fehler bei einer Ausnahme.
Parameter | |
---|---|
timeout | long : maximale Wartezeit in ms |
retryInterval | long : Wartezeit zwischen Befehlswiederholungen |
attempts | int : die maximale Anzahl von Versuchen |
command | String : der angegebene Systembefehl und optional Argumente für exec |
Kehrt zurück | |
---|---|
CommandResult | ein CommandResult , das das Ergebnis der Befehlsausführung enthält |
runTimedCmdWithInput
public abstract CommandResult runTimedCmdWithInput (long timeout, String input, File stdoutFile, File stderrFile, String... command)
Hilfsmethode zum Ausführen eines Systembefehls, zum Abbrechen, wenn dies länger als eine angegebene Zeit dauert, und zum Umleiten der Ausgabe in Dateien, falls angegeben.
Parameter | |
---|---|
timeout | long : Timeout maximale Wartezeit in ms. 0 bedeutet kein Timeout. |
input | String : die stdin-Eingabe, die an den Prozess übergeben werden soll |
stdoutFile | File : ERROR(/File) wohin die std-Ausgabe umgeleitet wird. Kann null sein. |
stderrFile | File : ERROR(/File) wohin die Fehlerausgabe umgeleitet wird. Kann null sein. |
command | String : der angegebene Systembefehl und optional Argumente für exec |
Kehrt zurück | |
---|---|
CommandResult | ein CommandResult , das das Ergebnis der Befehlsausführung enthält |
runTimedCmdWithInput
public abstract CommandResult runTimedCmdWithInput (long timeout, String input, String... command)
Hilfsmethode zum Ausführen eines Systembefehls, der eine stdin-Eingabe erfordert, und zum Abbrechen, wenn dies länger als eine angegebene Zeit dauert.
Parameter | |
---|---|
timeout | long : maximale Wartezeit in ms |
input | String : die stdin-Eingabe, die an den Prozess übergeben werden soll |
command | String : der angegebene Systembefehl und optional Argumente für exec |
Kehrt zurück | |
---|---|
CommandResult | ein CommandResult , das das Ergebnis der Befehlsausführung enthält |
runTimedCmdWithInput
public abstract CommandResult runTimedCmdWithInput (long timeout, String input,command)
Hilfsmethode zum Ausführen eines Systembefehls, der eine stdin-Eingabe erfordert, und zum Abbrechen, wenn dies länger als eine angegebene Zeit dauert.
Parameter | |
---|---|
timeout | long : maximale Wartezeit in ms |
input | String : die stdin-Eingabe, die an den Prozess übergeben werden soll |
command | ERROR(/List) enthält den Systembefehl und optional Argumente für exec |
Kehrt zurück | |
---|---|
CommandResult | ein CommandResult , das das Ergebnis der Befehlsausführung enthält |
runTimedCmdWithInputRedirect
public abstract CommandResult runTimedCmdWithInputRedirect (long timeout, File inputRedirect, String... command)
Hilfsmethode zum Ausführen eines Systembefehls, der das Umleiten von Stdin aus einer Datei erfordert, und das Abbrechen, wenn es länger als eine angegebene Zeit dauert.
Parameter | |
---|---|
timeout | long : maximale Wartezeit in ms |
inputRedirect | File : der ERROR(/File) zum Umleiten als Standardeingabe mit ERROR(/ProcessBuilder#redirectInput()) . Wenn null, wird stdin nicht umgeleitet. |
command | String : der angegebene Systembefehl und optional Argumente für exec |
Kehrt zurück | |
---|---|
CommandResult | ein CommandResult , das das Ergebnis der Befehlsausführung enthält |
runTimedRetry
public abstract boolean runTimedRetry (long opTimeout, long pollInterval, int attempts, IRunUtil.IRunnableResult runnable)
Blockiert und führt eine Operation mehrmals aus, bis sie erfolgreich ist.
Parameter | |
---|---|
opTimeout | long : maximale Wartezeit in ms für einen Operationsversuch |
pollInterval | long : Wartezeit zwischen Befehlswiederholungen |
attempts | int : die maximale Anzahl von Versuchen |
runnable | IRunUtil.IRunnableResult : IRunUtil.IRunnableResult zum Ausführen |
Kehrt zurück | |
---|---|
boolean | true , wenn der Vorgang erfolgreich abgeschlossen wurde, bevor die Versuche erreicht wurden. |
setEnvVariable
public abstract void setEnvVariable (String key, String value)
Legt eine Umgebungsvariable fest, die beim Ausführen von Systembefehlen verwendet werden soll.
Parameter | |
---|---|
key | String : der Variablenname |
value | String : der Variablenwert |
Siehe auch:
setEnvVariablePriority
public abstract void setEnvVariablePriority (IRunUtil.EnvPriority priority)
Entscheiden Sie, ob beim Erstellen eines Prozesses das Deaktivieren der Umgebungsvariable eine höhere Priorität hat als das Setzen. Standardmäßig hat das Deaktivieren eine höhere Priorität: Das heißt, wenn versucht wird, eine Variable mit demselben Namen zu setzen, wird dies nicht passieren, da die Variable zurückgesetzt wird. Kann nicht auf der standardmäßigen IRunUtil
Instanz verwendet werden.
Parameter | |
---|---|
priority | IRunUtil.EnvPriority |
setInterruptibleInFuture
public abstract void setInterruptibleInFuture (Thread thread, long timeMs)
Nach einiger Wartezeit als unterbrechbar setzen. ERROR(/CommandScheduler#shutdownHard())
um zu erzwingen, dass wir schließlich beenden.
Parameter | |
---|---|
thread | Thread : Der Thread, der unterbrechbar wird. |
timeMs | long : Wartezeit, bevor unterbrechbar eingestellt wird. |
setLinuxInterruptProcess
public abstract void setLinuxInterruptProcess (boolean interrupt)
Erlauben Sie die Verwendung von Linux-'Kill'-Unterbrechungen für Prozesse, die durch #runTimed-Methoden ausgeführt werden, wenn eine Zeitüberschreitung erreicht wird. Kann nicht auf der standardmäßigen IRunUtil
Instanz verwendet werden.
Parameter | |
---|---|
interrupt | boolean |
setRedirectStderrToStdout
public abstract void setRedirectStderrToStdout (boolean redirect)
Stellen Sie den Standardfehlerstream so ein, dass er beim Ausführen von Systembefehlen zum Standardausgabestream umgeleitet wird. Der Anfangswert ist falsch.
Parameter | |
---|---|
redirect | boolean : neuer Wert, ob umgeleitet werden soll oder nicht |
setWorkingDir
public abstract void setWorkingDir (File dir)
Legt das Arbeitsverzeichnis für Systembefehle fest.
Parameter | |
---|---|
dir | File : das Arbeitsverzeichnis |
Siehe auch:
schlafen
public abstract void sleep (long time)
Hilfsmethode zum Schlafen für eine bestimmte Zeit, wobei alle Ausnahmen ignoriert werden.
Parameter | |
---|---|
time | long : ms zu schlafen. Werte kleiner oder gleich 0 werden ignoriert |
unsetEnvVariable
public abstract void unsetEnvVariable (String key)
Setzt eine Umgebungsvariable zurück, sodass die Systembefehle ohne diese Umgebungsvariable ausgeführt werden.
Parameter | |
---|---|
key | String : der Variablenname |
Siehe auch:
Alle Inhalte und Codebeispiele auf dieser Seite unterliegen den Lizenzen wie im Abschnitt Inhaltslizenz beschrieben. Java und OpenJDK sind Marken oder eingetragene Marken von Oracle und/oder seinen Tochtergesellschaften.
Zuletzt aktualisiert: 2023-03-30 (UTC).