RunUtil

public class RunUtil
extends Object implements IRunUtil

java.lang.Object
com.android.tradefed.util.RunUtil


Eine Sammlung von Hilfsmethoden zum Ausführen von Vorgängen.

Zusammenfassung

Felder

public static final String INHERITIO_PREFIX

public static final String RUNNABLE_NOTIFIER_NAME

Öffentliche Bauträger

RunUtil ()

Erstellen Sie ein neues RunUtil Objekt zur Verwendung.

Öffentliche Methoden

void allowInterrupt (boolean allow)

Erlaubt/verbietet Ausführungsinterrupts für den aktuellen Thread.

static IRunUtil getDefault ()

Rufen Sie einen Verweis auf das Standard- RunUtil Objekt ab.

void interrupt (Thread thread, String message, ErrorIdentifier errorId)

Unterbricht die laufenden/anstehenden Ausführungsvorgänge für den angegebenen Thread.

void interrupt (Thread thread, String message)

Unterbricht die laufenden/anstehenden Ausführungsvorgänge für den angegebenen Thread.

boolean isInterruptAllowed ()

Geben Sie den Interrupt-Status von RunUtil an.

Process runCmdInBackground (Redirect redirect, command) runCmdInBackground (Redirect redirect, command)

Eine alternative runCmdInBackground(String) -Methode, die die Befehlsargumente im ERROR(/List) -Format akzeptiert.

Process runCmdInBackground ( command) runCmdInBackground ( command)

Eine alternative runCmdInBackground(String) -Methode, die die Befehlsargumente im ERROR(/List) -Format akzeptiert.

Process runCmdInBackground ( command, OutputStream output) runCmdInBackground ( command, OutputStream output)

Das Ausführen eines Befehls mit einem ERROR(/OutputStream) protokolliert die Ausgabe des Befehls.

Process runCmdInBackground (String... command)

Hilfsmethode zum asynchronen Ausführen eines Systembefehls.

Process runCmdInBackground (Redirect redirect, String... command)

Hilfsmethode zum asynchronen Ausführen eines Systembefehls.

boolean runEscalatingTimedRetry (long opTimeout, long initialPollInterval, long maxPollInterval, long maxTime, IRunUtil.IRunnableResult runnable)

Blockieren und führen Sie einen Vorgang mehrmals aus, bis er erfolgreich ist.

boolean runFixedTimedRetry (long opTimeout, long pollInterval, long maxTime, IRunUtil.IRunnableResult runnable)

Blockieren und führen Sie einen Vorgang mehrmals aus, bis er erfolgreich ist.

boolean runFixedTimedRetryWithOutputMonitor (long opTimeout, long idleOutputTimeout, long pollInterval, long maxTime, IRunUtil.IRunnableResult runnable)

Blockieren und führen Sie einen Vorgang mehrmals aus, bis er erfolgreich ist.

CommandStatus runTimed (long timeout, IRunUtil.IRunnableResult runnable, boolean logErrors)

Blockiert und führt einen Vorgang aus und bricht ihn ab, wenn er länger als eine angegebene Zeit dauert.

CommandResult runTimedCmd (long timeout, OutputStream stdout, OutputStream stderr, String... command)

Hilfsmethode zum Ausführen eines Systembefehls, zum Abbrechen, wenn er länger als eine angegebene Zeit dauert, und zum Umleiten der Ausgabe in Dateien, falls angegeben.

CommandResult runTimedCmd (long timeout, String... command)

Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn er länger als eine angegebene Zeit dauert.

CommandResult runTimedCmdRetry (long timeout, long retryInterval, int attempts, String... command)

Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn er länger als eine angegebene Zeit dauert.

CommandResult runTimedCmdRetryWithOutputMonitor (long timeout, long idleOutputTimeout, long retryInterval, int attempts, String... command)

Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn er länger als eine angegebene Zeit dauert.

CommandResult runTimedCmdSilently (long timeout, String... command)

Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn er länger als eine angegebene Zeit dauert.

CommandResult runTimedCmdSilentlyRetry (long timeout, long retryInterval, int attempts, String... command)

Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn er länger als eine angegebene Zeit dauert.

CommandResult runTimedCmdWithInput (long timeout, String input, File stdoutFile, File stderrFile, String... command)

Hilfsmethode zum Ausführen eines Systembefehls, zum Abbrechen, wenn er länger als eine angegebene Zeit dauert, und zum Umleiten der Ausgabe in Dateien, falls angegeben.

CommandResult runTimedCmdWithInput (long timeout, String input, String... command)

Hilfsmethode zum Ausführen eines Systembefehls, der eine Standardeingabe erfordert, und zum Abbrechen, wenn die Ausführung länger als eine angegebene Zeit dauert.

CommandResult runTimedCmdWithInput (long timeout, String input, command) runTimedCmdWithInput (long timeout, String input, command)

Hilfsmethode zum Ausführen eines Systembefehls, der eine Standardeingabe erfordert, und zum Abbrechen, wenn die Ausführung länger als eine angegebene Zeit dauert.

CommandResult runTimedCmdWithInputRedirect (long timeout, File inputRedirect, String... command)

Hilfsmethode zum Ausführen eines Systembefehls, der die Umleitung von Stdin aus einer Datei und den Abbruch erfordert, wenn der Vorgang länger als eine angegebene Zeit dauert.

CommandResult runTimedCmdWithOutputMonitor (long timeout, long idleOutputTimeout, OutputStream stdout, OutputStream stderr, String... command)

Hilfsmethode zum Ausführen eines Systembefehls, zum Abbrechen, wenn er länger als eine angegebene Zeit dauert, und zum Umleiten der Ausgabe in Dateien, falls angegeben.

CommandResult runTimedCmdWithOutputMonitor (long timeout, long idleOutputTimeout, String... command)

Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn er länger als eine angegebene Zeit dauert.

boolean runTimedRetry (long opTimeout, long pollInterval, int attempts, IRunUtil.IRunnableResult runnable)

Blockieren und führen Sie einen Vorgang mehrmals aus, bis er erfolgreich ist.

boolean runTimedRetryWithOutputMonitor (long opTimeout, long idleOutputTimeout, long pollInterval, int attempts, IRunUtil.IRunnableResult runnable)

Blockieren und führen Sie einen Vorgang mehrmals aus, bis er erfolgreich ist.

CommandStatus runTimedWithOutputMonitor (long timeout, long idleOutputTimeout, IRunUtil.IRunnableResult runnable, boolean logErrors)

Blockiert und führt einen Vorgang aus und bricht ihn ab, wenn er länger als eine angegebene Zeit dauert.

void setEnvVariable (String name, String value)

Legt eine Umgebungsvariable fest, die beim Ausführen von Systembefehlen verwendet werden soll.

void setEnvVariablePriority ( IRunUtil.EnvPriority priority)

Entscheiden Sie, ob beim Erstellen eines Prozesses das Deaktivieren von Umgebungsvariablen eine höhere Priorität hat als das Festlegen.

void setInterruptibleInFuture (Thread thread, long timeMs)

Nach einiger Wartezeit als unterbrechbar festlegen.

void setLinuxInterruptProcess (boolean interrupt)

Ermöglicht die Verwendung einer Linux-Kill-Unterbrechung für Prozesse, die über #runTimed-Methoden ausgeführt werden, wenn eine Zeitüberschreitung erreicht wird.

void setRedirectStderrToStdout (boolean redirect)

Legen Sie den Standardfehlerstrom so fest, dass beim Ausführen von Systembefehlen zum Standardausgabestrom umgeleitet wird.

void setWorkingDir (File dir)

Legt das Arbeitsverzeichnis für Systembefehle fest.

void sleep (long time)

Hilfsmethode zum Ruhen für eine bestimmte Zeit, wobei alle Ausnahmen ignoriert werden.

void unsetEnvVariable (String key)

Setzt eine Umgebungsvariable zurück, sodass die Systembefehle ohne diese Umgebungsvariable ausgeführt werden. Umgebungsvariablen erben möglicherweise vom übergeordneten Prozess, daher müssen wir die Umgebungsvariable aus ProcessBuilder.environment() löschen.

Felder

INHERITIO_PREFIX

public static final String INHERITIO_PREFIX

RUNNABLE_NOTIFIER_NAME

public static final String RUNNABLE_NOTIFIER_NAME

Öffentliche Bauträger

RunUtil

public RunUtil ()

Erstellen Sie ein neues RunUtil Objekt zur Verwendung.

Öffentliche Methoden

erlaubenInterrupt

public void allowInterrupt (boolean allow)

Erlaubt/verbietet Ausführungsinterrupts für den aktuellen Thread. Wenn es erlaubt ist, können Ausführungsvorgänge des aktuellen Threads von anderen Threads über die Methode interrupt(Thread, String) unterbrochen werden.

Parameter
allow boolean : Gibt an, ob Ausführungsinterrupts für den aktuellen Thread zugelassen werden sollen.

getDefault

public static IRunUtil getDefault ()

Rufen Sie einen Verweis auf das Standard- RunUtil Objekt ab.

Dies ist nützlich für Anrufer, die IRunUtil ohne Anpassung verwenden möchten. Es wird empfohlen, dass Aufrufer, die eine benutzerdefinierte IRunUtil-Instanz benötigen (d. h. entweder setEnvVariable(String, String) oder setWorkingDir(File) aufrufen müssen, ihre eigene Kopie erstellen.

Kehrt zurück
IRunUtil

unterbrechen

public 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 diese bekannt ist.

unterbrechen

public 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 boolean isInterruptAllowed ()

Geben Sie den Interrupt-Status von RunUtil an.

Kehrt zurück
boolean true, wenn der Lauf unterbrochen werden kann, andernfalls false.

runCmdInBackground

public Process runCmdInBackground (Redirect redirect, 
                 command)

Eine alternative runCmdInBackground(String) -Methode, die die Befehlsargumente im ERROR(/List) -Format akzeptiert.

Parameter
redirect Redirect : Der ERROR(/Redirect) , der auf den ProcessBuilder angewendet werden soll.

command : die ERROR(/List) , die den angegebenen Systembefehl und optional Argumente für exec enthält

Kehrt zurück
Process der Process des ausgeführten Befehls

runCmdInBackground

public Process runCmdInBackground ( command)

Eine alternative runCmdInBackground(String) -Methode, die die Befehlsargumente im ERROR(/List) -Format akzeptiert.

Parameter
command : die ERROR(/List) , die den angegebenen Systembefehl und optional Argumente für exec enthält

Kehrt zurück
Process der Process des ausgeführten Befehls

runCmdInBackground

public Process runCmdInBackground ( command, 
                OutputStream output)

Das Ausführen eines Befehls mit einem ERROR(/OutputStream) protokolliert die Ausgabe des Befehls. Stdout und stderr werden zusammengeführt.

Parameter
command : der auszuführende Befehl

output OutputStream : der OutputStream zum Speichern der Ausgabe

Kehrt zurück
Process Der Process der den Befehl ausführt

runCmdInBackground

public Process runCmdInBackground (String... command)

Hilfsmethode zum asynchronen Ausführen eines Systembefehls.

Kehrt sofort nach dem Starten des Befehls zurück.

Parameter
command String : der angegebene Systembefehl und optional Argumente für exec

Kehrt zurück
Process der Process des ausgeführten Befehls

runCmdInBackground

public Process runCmdInBackground (Redirect redirect, 
                String... command)

Hilfsmethode zum asynchronen Ausführen eines Systembefehls.

Kehrt sofort nach dem Starten des Befehls zurück.

Parameter
redirect Redirect : Der ERROR(/Redirect) , der auf den ProcessBuilder angewendet werden soll.

command String : der angegebene Systembefehl und optional Argumente für exec

Kehrt zurück
Process der Process des ausgeführten Befehls

runEscalatingTimedRetry

public boolean runEscalatingTimedRetry (long opTimeout, 
                long initialPollInterval, 
                long maxPollInterval, 
                long maxTime, 
                IRunUtil.IRunnableResult runnable)

Blockieren und führen Sie einen Vorgang mehrmals aus, bis er erfolgreich ist.

Erhöhen Sie die Wartezeit zwischen Operationsversuchen exponentiell. Dies soll bei der Durchführung einer Operation wie der Abfrage eines Servers verwendet werden, um ihm Zeit zur Wiederherstellung zu geben, falls er vorübergehend ausfällt.

Parameter
opTimeout long : maximale Wartezeit in ms für einen einzelnen Operationsversuch

initialPollInterval long : anfängliche Wartezeit zwischen Operationsversuchen

maxPollInterval long : Die maximale Wartezeit zwischen Operationsversuchen

maxTime long : Die ungefähre Gesamtzeit, die maximal für die weitere Ausführung des Vorgangs benötigt wird

runnable IRunUtil.IRunnableResult : IRunUtil.IRunnableResult zum Ausführen

Kehrt zurück
boolean true , wenn der Vorgang vor Ablauf von maxTime erfolgreich abgeschlossen wurde

runFixedTimedRetry

public boolean runFixedTimedRetry (long opTimeout, 
                long pollInterval, 
                long maxTime, 
                IRunUtil.IRunnableResult runnable)

Blockieren und führen Sie einen Vorgang mehrmals aus, bis er erfolgreich ist.

Parameter
opTimeout long : maximale Wartezeit in ms für einen einzelnen Operationsversuch

pollInterval long : anfängliche Wartezeit zwischen Operationsversuchen

maxTime long : Die ungefähre Gesamtzeit, die maximal für die weitere Ausführung des Vorgangs benötigt wird

runnable IRunUtil.IRunnableResult : IRunUtil.IRunnableResult zum Ausführen

Kehrt zurück
boolean true , wenn der Vorgang vor Ablauf von maxTime erfolgreich abgeschlossen wurde

runFixedTimedRetryWithOutputMonitor

public boolean runFixedTimedRetryWithOutputMonitor (long opTimeout, 
                long idleOutputTimeout, 
                long pollInterval, 
                long maxTime, 
                IRunUtil.IRunnableResult runnable)

Blockieren und führen Sie einen Vorgang mehrmals aus, bis er erfolgreich ist. Überwacht außerdem die Ausgabestreams auf Aktivität und bricht ab, wenn für einen bestimmten Zeitraum keine Streamaktivität beobachtet wird. Wenn „idleOutputTimeout“ auf Null gesetzt ist, findet keine Stream-Überwachung statt.

Parameter
opTimeout long : maximale Wartezeit in ms für einen einzelnen Operationsversuch

idleOutputTimeout long : maximale Wartezeit in ms für die Ausgabe in den Ausgabestreams

pollInterval long : anfängliche Wartezeit zwischen Operationsversuchen

maxTime long : Die ungefähre Gesamtzeit, die maximal für die weitere Ausführung des Vorgangs benötigt wird

runnable IRunUtil.IRunnableResult : IRunUtil.IRunnableResult zum Ausführen

Kehrt zurück
boolean true , wenn der Vorgang vor Ablauf von maxTime erfolgreich abgeschlossen wurde

runTimed

public CommandStatus runTimed (long timeout, 
                IRunUtil.IRunnableResult runnable, 
                boolean logErrors)

Blockiert und führt einen Vorgang aus und bricht ihn ab, wenn er 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 CommandResult runTimedCmd (long timeout, 
                OutputStream stdout, 
                OutputStream stderr, 
                String... command)

Hilfsmethode zum Ausführen eines Systembefehls, zum Abbrechen, wenn er 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 : maximale Wartezeit in ms. 0 bedeutet kein Timeout.

stdout OutputStream : ERROR(/OutputStream) , wohin die Standardausgabe umgeleitet wird. Kann null sein.

stderr OutputStream : ERROR(/OutputStream) , 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

runTimedCmd

public CommandResult runTimedCmd (long timeout, 
                String... command)

Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn er 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 CommandResult runTimedCmdRetry (long timeout, 
                long retryInterval, 
                int attempts, 
                String... command)

Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn er 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 der Versuchsversuche

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

runTimedCmdRetryWithOutputMonitor

public CommandResult runTimedCmdRetryWithOutputMonitor (long timeout, 
                long idleOutputTimeout, 
                long retryInterval, 
                int attempts, 
                String... command)

Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn er länger als eine angegebene Zeit dauert. Überwacht außerdem die Ausgabestreams auf Aktivität und bricht ab, wenn für einen bestimmten Zeitraum keine Streamaktivität beobachtet wird. Wenn „idleOutputTimeout“ auf Null gesetzt ist, findet keine Stream-Überwachung statt.

Parameter
timeout long : maximale Wartezeit in ms für jeden Versuch

idleOutputTimeout long : maximale Wartezeit in ms für die Ausgabe in den Ausgabestreams

retryInterval long : Wartezeit zwischen Befehlswiederholungen

attempts int : die maximale Anzahl der Versuchsversuche

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 CommandResult runTimedCmdSilently (long timeout, 
                String... command)

Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn er länger als eine angegebene Zeit dauert. Ähnlich wie runTimedCmd(long, String) , protokolliert jedoch keine Fehler bei Ausnahmen.

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 CommandResult runTimedCmdSilentlyRetry (long timeout, 
                long retryInterval, 
                int attempts, 
                String... command)

Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn er länger als eine angegebene Zeit dauert. Ähnlich wie runTimedCmdRetry(long, long, int, String[]) , protokolliert jedoch keine Fehler bei Ausnahmen.

Parameter
timeout long : maximale Wartezeit in ms

retryInterval long : Wartezeit zwischen Befehlswiederholungen

attempts int : die maximale Anzahl der Versuchsversuche

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 CommandResult runTimedCmdWithInput (long timeout, 
                String input, 
                File stdoutFile, 
                File stderrFile, 
                String... command)

Hilfsmethode zum Ausführen eines Systembefehls, zum Abbrechen, wenn er länger als eine angegebene Zeit dauert, und zum Umleiten der Ausgabe in Dateien, falls angegeben.

Parameter
timeout long : maximale Wartezeit in ms. 0 bedeutet kein Timeout.

input String : die Standardeingabe, die an den Prozess übergeben werden soll

stdoutFile File : ERROR(/File) , wohin die Standardausgabe 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 CommandResult runTimedCmdWithInput (long timeout, 
                String input, 
                String... command)

Hilfsmethode zum Ausführen eines Systembefehls, der eine Standardeingabe erfordert, und zum Abbrechen, wenn die Ausführung länger als eine angegebene Zeit dauert.

Parameter
timeout long : maximale Wartezeit in ms

input String : die Standardeingabe, 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 CommandResult runTimedCmdWithInput (long timeout, 
                String input, 
                 command)

Hilfsmethode zum Ausführen eines Systembefehls, der eine Standardeingabe erfordert, und zum Abbrechen, wenn die Ausführung länger als eine angegebene Zeit dauert.

Parameter
timeout long : maximale Wartezeit in ms

input String : die Standardeingabe, 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 CommandResult runTimedCmdWithInputRedirect (long timeout, 
                File inputRedirect, 
                String... command)

Hilfsmethode zum Ausführen eines Systembefehls, der die Umleitung von Stdin aus einer Datei und den Abbruch erfordert, wenn der Vorgang länger als eine angegebene Zeit dauert.

Parameter
timeout long : maximale Wartezeit in ms

inputRedirect File : der ERROR(/File) , der mit ProcessBuilder.redirectInput() als Standardeingabe umgeleitet werden soll. 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

runTimedCmdWithOutputMonitor

public CommandResult runTimedCmdWithOutputMonitor (long timeout, 
                long idleOutputTimeout, 
                OutputStream stdout, 
                OutputStream stderr, 
                String... command)

Hilfsmethode zum Ausführen eines Systembefehls, zum Abbrechen, wenn er 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 : maximale Wartezeit in ms. 0 bedeutet kein Timeout.

idleOutputTimeout long : maximale Wartezeit in ms für die Ausgabe in den Ausgabestreams

stdout OutputStream : ERROR(/OutputStream) , wohin die Standardausgabe umgeleitet wird. Kann null sein.

stderr OutputStream : ERROR(/OutputStream) , 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

runTimedCmdWithOutputMonitor

public CommandResult runTimedCmdWithOutputMonitor (long timeout, 
                long idleOutputTimeout, 
                String... command)

Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn er länger als eine angegebene Zeit dauert. Überwacht außerdem die Ausgabestreams auf Aktivität und bricht ab, wenn für einen bestimmten Zeitraum keine Streamaktivität beobachtet wird. Wenn „idleOutputTimeout“ auf Null gesetzt ist, findet keine Stream-Überwachung statt.

Parameter
timeout long : maximale Wartezeit in ms. 0 bedeutet kein Timeout.

idleOutputTimeout long : maximale Wartezeit in ms für die Ausgabe in den Ausgabestreams

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 boolean runTimedRetry (long opTimeout, 
                long pollInterval, 
                int attempts, 
                IRunUtil.IRunnableResult runnable)

Blockieren und führen Sie einen Vorgang mehrmals aus, bis er erfolgreich ist.

Parameter
opTimeout long : maximale Wartezeit in ms für einen Operationsversuch

pollInterval long : Wartezeit zwischen Befehlswiederholungen

attempts int : die maximale Anzahl der Versuchsversuche

runnable IRunUtil.IRunnableResult : IRunUtil.IRunnableResult zum Ausführen

Kehrt zurück
boolean true , wenn der Vorgang erfolgreich abgeschlossen wurde, bevor Versuche erreicht wurden.

runTimedRetryWithOutputMonitor

public boolean runTimedRetryWithOutputMonitor (long opTimeout, 
                long idleOutputTimeout, 
                long pollInterval, 
                int attempts, 
                IRunUtil.IRunnableResult runnable)

Blockieren und führen Sie einen Vorgang mehrmals aus, bis er erfolgreich ist. Überwacht außerdem die Ausgabestreams auf Aktivität und bricht ab, wenn für einen bestimmten Zeitraum keine Streamaktivität beobachtet wird. Wenn „idleOutputTimeout“ auf Null gesetzt ist, findet keine Stream-Überwachung statt.

Parameter
opTimeout long : maximale Wartezeit in ms für einen Operationsversuch

idleOutputTimeout long : maximale Wartezeit in ms für die Ausgabe in den Ausgabestreams

pollInterval long : Wartezeit zwischen Befehlswiederholungen

attempts int : die maximale Anzahl der Versuchsversuche

runnable IRunUtil.IRunnableResult : IRunUtil.IRunnableResult zum Ausführen

Kehrt zurück
boolean true , wenn der Vorgang erfolgreich abgeschlossen wurde, bevor Versuche erreicht wurden.

runTimedWithOutputMonitor

public CommandStatus runTimedWithOutputMonitor (long timeout, 
                long idleOutputTimeout, 
                IRunUtil.IRunnableResult runnable, 
                boolean logErrors)

Blockiert und führt einen Vorgang aus und bricht ihn ab, wenn er länger als eine angegebene Zeit dauert. Überwacht außerdem die Ausgabestreams auf Aktivität und bricht ab, wenn für einen bestimmten Zeitraum keine Streamaktivität beobachtet wird. Wenn „idleOutputTimeout“ auf Null gesetzt ist, findet keine Stream-Überwachung statt.

Parameter
timeout long : maximale Wartezeit in ms

idleOutputTimeout long : maximale Wartezeit in ms für die Ausgabe in den Ausgabestreams

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.

setEnvVariable

public void setEnvVariable (String name, 
                String value)

Legt eine Umgebungsvariable fest, die beim Ausführen von Systembefehlen verwendet werden soll.

Parameter
name String : der Variablenname

value String : der Variablenwert

setEnvVariablePriority

public void setEnvVariablePriority (IRunUtil.EnvPriority priority)

Entscheiden Sie, ob beim Erstellen eines Prozesses das Deaktivieren von Umgebungsvariablen eine höhere Priorität hat als das Festlegen. Standardmäßig hat das Aufheben der Einstellung 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 nicht gesetzt wird. Kann nicht auf der Standard IRunUtil Instanz verwendet werden.

Parameter
priority IRunUtil.EnvPriority

setInterruptibleInFuture

public void setInterruptibleInFuture (Thread thread, 
                long timeMs)

Nach einiger Wartezeit als unterbrechbar festlegen. ERROR(/CommandScheduler#shutdownHard()) um zu erzwingen, dass wir irgendwann beenden.

Parameter
thread Thread : Der Thread, der unterbrechbar wird.

timeMs long : Wartezeit, bevor unterbrechbar eingestellt wird.

setLinuxInterruptProcess

public void setLinuxInterruptProcess (boolean interrupt)

Ermöglicht die Verwendung einer Linux-Kill-Unterbrechung für Prozesse, die über #runTimed-Methoden ausgeführt werden, wenn eine Zeitüberschreitung erreicht wird. Kann nicht auf der Standard IRunUtil Instanz verwendet werden.

Parameter
interrupt boolean

setRedirectStderrToStdout

public void setRedirectStderrToStdout (boolean redirect)

Legen Sie den Standardfehlerstrom so fest, dass beim Ausführen von Systembefehlen zum Standardausgabestrom umgeleitet wird. Der Anfangswert ist falsch.

Parameter
redirect boolean : neuer Wert dafür, ob umgeleitet werden soll oder nicht

setWorkingDir

public void setWorkingDir (File dir)

Legt das Arbeitsverzeichnis für Systembefehle fest.

Parameter
dir File : das Arbeitsverzeichnis

schlafen

public void sleep (long time)

Hilfsmethode zum Ruhen für eine bestimmte Zeit, wobei alle Ausnahmen ignoriert werden.

Parameter
time long : ms zum Schlafen. Werte kleiner oder gleich 0 werden ignoriert

unsetEnvVariable

public void unsetEnvVariable (String key)

Setzt eine Umgebungsvariable zurück, sodass die Systembefehle ohne diese Umgebungsvariable ausgeführt werden. Umgebungsvariablen erben möglicherweise vom übergeordneten Prozess, daher müssen wir die Umgebungsvariable aus ProcessBuilder.environment() löschen.

Parameter
key String : der Variablenname