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 Konstruktoren | |
---|---|
RunUtil()
Erstellen Sie ein neues |
|
RunUtil(boolean inheritEnvVars)
|
Öffentliche Methoden | |
---|---|
void
|
allowInterrupt(boolean allow)
Lässt Laufunterbrechungen im aktuellen Thread zu oder deaktiviert sie. |
ProcessBuilder
|
createProcessBuilder(Redirect redirect,
|
static
IRunUtil
|
getDefault()
Rufen Sie einen Verweis auf das Standard- |
void
|
interrupt(Thread thread, String message, ErrorIdentifier errorId)
Unterbricht die laufenden/anstehenden Ausführungsvorgänge im angegebenen Thread. |
void
|
interrupt(Thread thread, String message)
Unterbricht die laufenden/anstehenden Ausführungsvorgänge im angegebenen Thread. |
boolean
|
isInterruptAllowed()
Gibt den Unterbrechungsstatus von RunUtil an. |
Process
|
runCmdInBackground(Redirect redirect,
Eine alternative |
Process
|
runCmdInBackground(
Eine alternative |
Process
|
runCmdInBackground(
Wenn Sie einen Befehl mit einem |
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)
Blockiert und führt einen Vorgang mehrmals aus, bis er erfolgreich ist. |
boolean
|
runFixedTimedRetry(long opTimeout, long pollInterval, long maxTime, IRunUtil.IRunnableResult runnable)
Blockiert und führt einen Vorgang mehrmals aus, bis er erfolgreich ist. |
boolean
|
runFixedTimedRetryWithOutputMonitor(long opTimeout, long idleOutputTimeout, long pollInterval, long maxTime, IRunUtil.IRunnableResult runnable)
Blockiert und führt 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 bestimmte Zeit dauert. |
CommandResult
|
runTimedCmd(long timeout, OutputStream stdout, OutputStream stderr, String... command)
Hilfsmethode zum Ausführen eines Systembefehls, der abgebrochen wird, wenn er länger als eine bestimmte Zeit dauert, und zum Weiterleiten der Ausgabe an Dateien, sofern angegeben. |
CommandResult
|
runTimedCmd(long timeout, String... command)
Hilfsmethode zum Ausführen eines Systembefehls, der abgebrochen wird, wenn er länger als eine bestimmte Zeit dauert. |
CommandResult
|
runTimedCmdRetry(long timeout, long retryInterval, int attempts, String... command)
Hilfsmethode zum Ausführen eines Systembefehls, der abgebrochen wird, wenn er länger als eine bestimmte Zeit dauert. |
CommandResult
|
runTimedCmdRetryWithOutputMonitor(long timeout, long idleOutputTimeout, long retryInterval, int attempts, String... command)
Hilfsmethode zum Ausführen eines Systembefehls, der abgebrochen wird, wenn er länger als eine bestimmte Zeit dauert. |
CommandResult
|
runTimedCmdSilently(long timeout, String... command)
Hilfsmethode zum Ausführen eines Systembefehls, der abgebrochen wird, wenn er länger als eine bestimmte Zeit dauert. |
CommandResult
|
runTimedCmdSilentlyRetry(long timeout, long retryInterval, int attempts, String... command)
Hilfsmethode zum Ausführen eines Systembefehls, der abgebrochen wird, wenn er länger als eine bestimmte Zeit dauert. |
CommandResult
|
runTimedCmdWithInput(long timeout, String input, File stdoutFile, File stderrFile, String... command)
Hilfsmethode zum Ausführen eines Systembefehls, der abgebrochen wird, wenn er länger als eine bestimmte Zeit dauert, und zum Weiterleiten der Ausgabe an Dateien, sofern angegeben. |
CommandResult
|
runTimedCmdWithInput(long timeout, String input, String... command)
Hilfsmethode zum Ausführen eines Systembefehls, der eine stdin-Eingabe erfordert, und zum Abbrechen, wenn er länger als eine bestimmte Zeit dauert. |
CommandResult
|
runTimedCmdWithInput(long timeout, String input,
Hilfsmethode zum Ausführen eines Systembefehls, der eine stdin-Eingabe erfordert, und zum Abbrechen, wenn er länger als eine bestimmte Zeit dauert. |
CommandResult
|
runTimedCmdWithInputRedirect(long timeout, File inputRedirect, String... command)
Hilfsmethode zum Ausführen eines Systembefehls, der die Umleitung von Stdin von einer Datei erfordert, und zum Abbrechen, wenn er länger als eine bestimmte Zeit dauert. |
CommandResult
|
runTimedCmdWithOutputMonitor(long timeout, long idleOutputTimeout, OutputStream stdout, OutputStream stderr, String... command)
Hilfsmethode zum Ausführen eines Systembefehls, der abgebrochen wird, wenn er länger als eine bestimmte Zeit dauert, und zum Weiterleiten der Ausgabe an Dateien, sofern angegeben. |
CommandResult
|
runTimedCmdWithOutputMonitor(long timeout, long idleOutputTimeout, String... command)
Hilfsmethode zum Ausführen eines Systembefehls, der abgebrochen wird, wenn er länger als eine bestimmte Zeit dauert. |
boolean
|
runTimedRetry(long opTimeout, long pollInterval, int attempts, IRunUtil.IRunnableResult runnable)
Blockiert und führt einen Vorgang mehrmals aus, bis er erfolgreich ist. |
boolean
|
runTimedRetryWithOutputMonitor(long opTimeout, long idleOutputTimeout, long pollInterval, int attempts, IRunUtil.IRunnableResult runnable)
Blockiert und führt 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 bestimmte 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)
Legen Sie fest, ob beim Erstellen eines Prozesses das Entfernen von Umgebungsvariablen eine höhere Priorität hat als das Festlegen. |
void
|
setInterruptibleInFuture(Thread thread, long timeMs)
Nach einer gewissen Wartezeit als unterbrechbar festlegen |
void
|
setLinuxInterruptProcess(boolean interrupt)
Es wird zugelassen, dass der Linux-Befehl „kill“ verwendet wird, um einen Prozess zu beenden, der über die #runTimed-Methoden ausgeführt wird, wenn ein Zeitlimit erreicht wird. |
void
|
setRedirectStderrToStdout(boolean redirect)
Legen Sie fest, dass der Standardfehlerstream beim Ausführen von Systembefehlen an den Standardausgabestream umgeleitet wird. |
void
|
setWorkingDir(File dir)
Hiermit wird das Arbeitsverzeichnis für Systembefehle festgelegt. |
void
|
sleep(long time)
Hilfsmethode, um für eine bestimmte Zeit zu schlafen und dabei alle Ausnahmen zu ignorieren. |
void
|
unsetEnvVariable(String key)
Heben Sie die Festlegung einer Umgebungsvariablen auf, damit die Systembefehle ohne diese Umgebungsvariable ausgeführt werden.
Umgebungsvariablen können vom übergeordneten Prozess übernommen werden. Daher müssen wir die Umgebungsvariable aus |
Felder
INHERITIO_PREFIX
public static final String INHERITIO_PREFIX
RUNNABLE_NOTIFIER_NAME
public static final String RUNNABLE_NOTIFIER_NAME
Öffentliche Konstruktoren
RunUtil
public RunUtil (boolean inheritEnvVars)
Parameter | |
---|---|
inheritEnvVars |
boolean |
Öffentliche Methoden
allowInterrupt
public void allowInterrupt (boolean allow)
Lässt Laufunterbrechungen im aktuellen Thread zu oder deaktiviert sie. Wenn dies zulässig ist, können Vorgänge des aktuellen Threads von anderen Threads über die Methode interrupt(Thread, String)
unterbrochen werden.
Parameter | |
---|---|
allow |
boolean : Gibt an, ob Ausführungsunterbrechungen im aktuellen Thread zulässig sind. |
createProcessBuilder
public ProcessBuilder createProcessBuilder (Redirect redirect,commandList, boolean enableCache)
Parameter | |
---|---|
redirect |
Redirect |
commandList |
|
enableCache |
boolean |
Returns | |
---|---|
ProcessBuilder |
getDefault
public static IRunUtil getDefault ()
Rufen Sie einen Verweis auf das Standard-RunUtil
-Objekt ab.
Dies ist nützlich für Aufrufer, die IRunUtil ohne Anpassung verwenden möchten.
Wenn Sie eine benutzerdefinierte IRunUtil-Instanz benötigen (d. h. setEnvVariable(String, String)
oder setWorkingDir(File)
aufrufen müssen), sollten Sie eine eigene Kopie erstellen.
Returns | |
---|---|
IRunUtil |
Unterbrechung
public void interrupt (Thread thread, String message, ErrorIdentifier errorId)
Unterbricht die laufenden/anstehenden Ausführungsvorgänge im angegebenen Thread. Die Ausführung von Vorgängen auf dem angegebenen Thread führt zu RunInterruptedException
.
Parameter | |
---|---|
message |
String : die Nachricht für RunInterruptedException . |
errorId |
ErrorIdentifier : Die Ursache der Unterbrechung, sofern bekannt. |
Unterbrechung
public void interrupt (Thread thread, String message)
Unterbricht die laufenden/anstehenden Ausführungsvorgänge im angegebenen Thread. Die Ausführung von Vorgängen auf dem angegebenen Thread führt zu RunInterruptedException
.
Parameter | |
---|---|
message |
String : die Nachricht für RunInterruptedException . |
isInterruptAllowed
public boolean isInterruptAllowed ()
Gibt den Unterbrechungsstatus von RunUtil an.
Returns | |
---|---|
boolean |
„true“, wenn der Ablauf unterbrochen werden kann, andernfalls „false“. |
runCmdInBackground
public Process runCmdInBackground (Redirect redirect,command)
Eine alternative runCmdInBackground(String)
-Methode, die die Befehlsargumente in ERROR(/List)
-Form akzeptiert.
Parameter | |
---|---|
redirect |
Redirect : Die ERROR(/Redirect) , die auf die ProcessBuilder angewendet werden soll. |
command |
: der ERROR(/List) mit dem angegebenen Systembefehl und optionalen Argumenten für die Ausführung |
Returns | |
---|---|
Process |
die Process des ausgeführten Befehls |
runCmdInBackground
public Process runCmdInBackground (command)
Eine alternative runCmdInBackground(String)
-Methode, die die Befehlsargumente in ERROR(/List)
-Form akzeptiert.
Parameter | |
---|---|
command |
: der ERROR(/List) mit dem angegebenen Systembefehl und optionalen Argumenten für die Ausführung |
Returns | |
---|---|
Process |
die Process des ausgeführten Befehls |
runCmdInBackground
public Process runCmdInBackground (command, OutputStream output)
Wenn Sie einen Befehl mit einem ERROR(/OutputStream)
ausführen, wird die Ausgabe des Befehls protokolliert.
Stdout und stderr werden zusammengeführt.
Parameter | |
---|---|
command |
: Der auszuführende Befehl |
output |
OutputStream : der OutputStream, in dem die Ausgabe gespeichert werden soll |
Returns | |
---|---|
Process |
Process , mit dem der Befehl ausgeführt wird |
runCmdInBackground
public Process runCmdInBackground (String... command)
Hilfsmethode zum asynchronen Ausführen eines Systembefehls.
Wird sofort nach dem Starten des Befehls zurückgegeben.
Parameter | |
---|---|
command |
String : Der angegebene Systembefehl und optional Argumente für exec |
Returns | |
---|---|
Process |
die Process des ausgeführten Befehls |
runCmdInBackground
public Process runCmdInBackground (Redirect redirect, String... command)
Hilfsmethode zum asynchronen Ausführen eines Systembefehls.
Wird sofort nach dem Starten des Befehls zurückgegeben.
Parameter | |
---|---|
redirect |
Redirect : Die ERROR(/Redirect) , die auf die ProcessBuilder angewendet werden soll. |
command |
String : Der angegebene Systembefehl und optional Argumente für exec |
Returns | |
---|---|
Process |
die Process des ausgeführten Befehls |
runEscalatingTimedRetry
public boolean runEscalatingTimedRetry (long opTimeout, long initialPollInterval, long maxPollInterval, long maxTime, IRunUtil.IRunnableResult runnable)
Blockiert und führt einen Vorgang mehrmals aus, bis er erfolgreich ist.
Die Wartezeit zwischen den Ausführungsversuchen wird exponentiell erhöht. Diese Option sollte bei Vorgängen wie dem Abfragen eines Servers verwendet werden, um ihm Zeit zur Wiederherstellung zu geben, falls er vorübergehend ausgefallen ist.
Parameter | |
---|---|
opTimeout |
long : Maximale Wartezeit in Millisekunden für einen einzelnen Vorgang |
initialPollInterval |
long : Anfangswartezeit zwischen den Vorgangsversuchen |
maxPollInterval |
long : die maximale Wartezeit zwischen den Ausführungsversuchen |
maxTime |
long : die ungefähre maximale Zeit, die der Vorgang wiederholt versucht werden kann |
runnable |
IRunUtil.IRunnableResult : IRunUtil.IRunnableResult zum Ausführen |
Returns | |
---|---|
boolean |
true , wenn der Vorgang vor Ablauf der maximalen Zeit erfolgreich abgeschlossen wurde |
runFixedTimedRetry
public boolean runFixedTimedRetry (long opTimeout, long pollInterval, long maxTime, IRunUtil.IRunnableResult runnable)
Blockiert und führt einen Vorgang mehrmals aus, bis er erfolgreich ist.
Parameter | |
---|---|
opTimeout |
long : Maximale Wartezeit in Millisekunden für einen einzelnen Vorgang |
pollInterval |
long : Anfangswartezeit zwischen den Vorgangsversuchen |
maxTime |
long : die ungefähre maximale Zeit, die der Vorgang wiederholt versucht werden kann |
runnable |
IRunUtil.IRunnableResult : IRunUtil.IRunnableResult zum Ausführen |
Returns | |
---|---|
boolean |
true , wenn der Vorgang vor Ablauf der maximalen Zeit erfolgreich abgeschlossen wurde |
runFixedTimedRetryWithOutputMonitor
public boolean runFixedTimedRetryWithOutputMonitor (long opTimeout, long idleOutputTimeout, long pollInterval, long maxTime, IRunUtil.IRunnableResult runnable)
Blockiert und führt einen Vorgang mehrmals aus, bis er erfolgreich ist. Außerdem werden die Ausgabestreams auf Aktivität überwacht und der Vorgang abgebrochen, wenn für einen bestimmten Zeitraum keine Streamaktivität festgestellt wird. Wenn „idleOutputTimeout“ auf null gesetzt ist, erfolgt kein Stream-Monitoring.
Parameter | |
---|---|
opTimeout |
long : Maximale Wartezeit in Millisekunden für einen einzelnen Vorgang |
idleOutputTimeout |
long : Maximale Wartezeit in Millisekunden für die Ausgabe in den Ausgabestreams |
pollInterval |
long : Anfangswartezeit zwischen den Vorgangsversuchen |
maxTime |
long : die ungefähre maximale Zeit, die der Vorgang wiederholt versucht werden kann |
runnable |
IRunUtil.IRunnableResult : IRunUtil.IRunnableResult zum Ausführen |
Returns | |
---|---|
boolean |
true , wenn der Vorgang vor Ablauf der maximalen Zeit 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 bestimmte Zeit dauert.
Parameter | |
---|---|
timeout |
long : Maximale Wartezeit in ms |
runnable |
IRunUtil.IRunnableResult : IRunUtil.IRunnableResult zum Ausführen |
logErrors |
boolean : Ob Fehler bei einer Ausnahme protokolliert werden sollen oder nicht. |
Returns | |
---|---|
CommandStatus |
das CommandStatus -Ergebnis des Vorgangs. |
runTimedCmd
public CommandResult runTimedCmd (long timeout, OutputStream stdout, OutputStream stderr, String... command)
Hilfsmethode zum Ausführen eines Systembefehls, der abgebrochen wird, wenn er länger als eine bestimmte Zeit dauert, und zum Weiterleiten der Ausgabe an Dateien, sofern angegeben. Wenn ERROR(/OutputStream)
auf diese Weise angegeben werden, bleiben sie am Ende der Funktion geöffnet.
Parameter | |
---|---|
timeout |
long : timeout: maximale Wartezeit in ms. „0“ bedeutet kein Zeitlimit. |
stdout |
OutputStream : ERROR(/OutputStream) , an das die Standardausgabe weitergeleitet wird. Kann null sein. |
stderr |
OutputStream : ERROR(/OutputStream) , an das die Fehlerausgabe weitergeleitet wird. Kann null sein. |
command |
String : Der angegebene Systembefehl und optional Argumente für exec |
Returns | |
---|---|
CommandResult |
CommandResult mit dem Ergebnis des Befehls |
runTimedCmd
public CommandResult runTimedCmd (long timeout, String... command)
Hilfsmethode zum Ausführen eines Systembefehls, der abgebrochen wird, wenn er länger als eine bestimmte Zeit dauert.
Parameter | |
---|---|
timeout |
long : Maximale Wartezeit in ms. „0“ bedeutet, dass keine Zeitüberschreitung festgelegt ist. |
command |
String : Der angegebene Systembefehl und optional Argumente für exec |
Returns | |
---|---|
CommandResult |
CommandResult mit dem Ergebnis des Befehls |
runTimedCmdRetry
public CommandResult runTimedCmdRetry (long timeout, long retryInterval, int attempts, String... command)
Hilfsmethode zum Ausführen eines Systembefehls, der abgebrochen wird, wenn er länger als eine bestimmte Zeit dauert.
Parameter | |
---|---|
timeout |
long : Maximale Wartezeit in Millisekunden für jeden Versuch |
retryInterval |
long : Wartezeit zwischen den Befehlswiederholungen |
attempts |
int : die maximale Anzahl von Versuchen |
command |
String : Der angegebene Systembefehl und optional Argumente für exec |
Returns | |
---|---|
CommandResult |
CommandResult mit dem Ergebnis des Befehls |
runTimedCmdRetryWithOutputMonitor
public CommandResult runTimedCmdRetryWithOutputMonitor (long timeout, long idleOutputTimeout, long retryInterval, int attempts, String... command)
Hilfsmethode zum Ausführen eines Systembefehls, der abgebrochen wird, wenn er länger als eine bestimmte Zeit dauert. Außerdem werden die Ausgabestreams auf Aktivität überwacht und der Vorgang abgebrochen, wenn für einen bestimmten Zeitraum keine Streamaktivität festgestellt wird. Wenn „idleOutputTimeout“ auf null gesetzt ist, erfolgt kein Stream-Monitoring.
Parameter | |
---|---|
timeout |
long : Maximale Wartezeit in Millisekunden für jeden Versuch |
idleOutputTimeout |
long : Maximale Wartezeit in Millisekunden für die Ausgabe in den Ausgabestreams |
retryInterval |
long : Wartezeit zwischen den Befehlswiederholungen |
attempts |
int : die maximale Anzahl von Versuchen |
command |
String : Der angegebene Systembefehl und optional Argumente für exec |
Returns | |
---|---|
CommandResult |
CommandResult mit dem Ergebnis des Befehls |
runTimedCmdSilently
public CommandResult runTimedCmdSilently (long timeout, String... command)
Hilfsmethode zum Ausführen eines Systembefehls, der abgebrochen wird, wenn er länger als eine bestimmte Zeit dauert. Ähnlich wie runTimedCmd(long, String)
, protokolliert aber keine Fehler bei einer Ausnahme.
Parameter | |
---|---|
timeout |
long : Maximale Wartezeit in ms |
command |
String : Der angegebene Systembefehl und optional Argumente für exec |
Returns | |
---|---|
CommandResult |
CommandResult mit dem Ergebnis des Befehls |
runTimedCmdSilentlyRetry
public CommandResult runTimedCmdSilentlyRetry (long timeout, long retryInterval, int attempts, String... command)
Hilfsmethode zum Ausführen eines Systembefehls, der abgebrochen wird, wenn er länger als eine bestimmte Zeit dauert. Ähnlich wie runTimedCmdRetry(long, long, int, String[])
, protokolliert aber keine Fehler bei Ausnahmen.
Parameter | |
---|---|
timeout |
long : Maximale Wartezeit in ms |
retryInterval |
long : Wartezeit zwischen den Befehlswiederholungen |
attempts |
int : die maximale Anzahl von Versuchen |
command |
String : Der angegebene Systembefehl und optional Argumente für exec |
Returns | |
---|---|
CommandResult |
CommandResult mit dem Ergebnis des Befehls |
runTimedCmdWithInput
public CommandResult runTimedCmdWithInput (long timeout, String input, File stdoutFile, File stderrFile, String... command)
Hilfsmethode zum Ausführen eines Systembefehls, der abgebrochen wird, wenn er länger als eine bestimmte Zeit dauert, und zum Weiterleiten der Ausgabe an Dateien, sofern angegeben.
Parameter | |
---|---|
timeout |
long : timeout: maximale Wartezeit in ms. „0“ bedeutet kein Zeitlimit. |
input |
String : die stdin-Eingabe, die an den Prozess übergeben werden soll |
stdoutFile |
File : ERROR(/File) , an das die Standardausgabe weitergeleitet wird. Kann null sein. |
stderrFile |
File : ERROR(/File) , an das die Fehlerausgabe weitergeleitet wird. Kann null sein. |
command |
String : Der angegebene Systembefehl und optional Argumente für exec |
Returns | |
---|---|
CommandResult |
CommandResult mit dem Ergebnis des Befehls |
runTimedCmdWithInput
public CommandResult runTimedCmdWithInput (long timeout, String input, String... command)
Hilfsmethode zum Ausführen eines Systembefehls, der eine stdin-Eingabe erfordert, und zum Abbrechen, wenn er länger als eine bestimmte 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 |
Returns | |
---|---|
CommandResult |
CommandResult mit dem Ergebnis des Befehls |
runTimedCmdWithInput
public CommandResult runTimedCmdWithInput (long timeout, String input,command)
Hilfsmethode zum Ausführen eines Systembefehls, der eine stdin-Eingabe erfordert, und zum Abbrechen, wenn er länger als eine bestimmte Zeit dauert.
Parameter | |
---|---|
timeout |
long : Maximale Wartezeit in ms |
input |
String : die stdin-Eingabe, die an den Prozess übergeben werden soll |
command |
: ERROR(/List) mit dem Systembefehl und optional Argumenten für die Ausführung |
Returns | |
---|---|
CommandResult |
CommandResult mit dem Ergebnis des Befehls |
runTimedCmdWithInputRedirect
public CommandResult runTimedCmdWithInputRedirect (long timeout, File inputRedirect, String... command)
Hilfsmethode zum Ausführen eines Systembefehls, der die Umleitung von Stdin von einer Datei erfordert, und zum Abbrechen, wenn er länger als eine bestimmte Zeit dauert.
Parameter | |
---|---|
timeout |
long : Maximale Wartezeit in ms |
inputRedirect |
File : die ERROR(/File) , die mit ProcessBuilder.redirectInput() als Standardeingabe weitergeleitet werden soll. Wenn „null“ angegeben ist, wird stdin nicht umgeleitet. |
command |
String : Der angegebene Systembefehl und optional Argumente für exec |
Returns | |
---|---|
CommandResult |
CommandResult mit dem Ergebnis des Befehls |
runTimedCmdWithOutputMonitor
public CommandResult runTimedCmdWithOutputMonitor (long timeout, long idleOutputTimeout, OutputStream stdout, OutputStream stderr, String... command)
Hilfsmethode zum Ausführen eines Systembefehls, der abgebrochen wird, wenn er länger als eine bestimmte Zeit dauert, und zum Weiterleiten der Ausgabe an Dateien, sofern angegeben. Wenn ERROR(/OutputStream)
auf diese Weise angegeben werden, bleiben sie am Ende der Funktion geöffnet.
Parameter | |
---|---|
timeout |
long : timeout: maximale Wartezeit in ms. „0“ bedeutet kein Zeitlimit. |
idleOutputTimeout |
long : Maximale Wartezeit in Millisekunden für die Ausgabe in den Ausgabestreams |
stdout |
OutputStream : ERROR(/OutputStream) , an das die Standardausgabe weitergeleitet wird. Kann null sein. |
stderr |
OutputStream : ERROR(/OutputStream) , an das die Fehlerausgabe weitergeleitet wird. Kann null sein. |
command |
String : Der angegebene Systembefehl und optional Argumente für exec |
Returns | |
---|---|
CommandResult |
CommandResult mit dem Ergebnis des Befehls |
runTimedCmdWithOutputMonitor
public CommandResult runTimedCmdWithOutputMonitor (long timeout, long idleOutputTimeout, String... command)
Hilfsmethode zum Ausführen eines Systembefehls, der abgebrochen wird, wenn er länger als eine bestimmte Zeit dauert. Außerdem werden die Ausgabestreams auf Aktivität überwacht und der Vorgang abgebrochen, wenn für einen bestimmten Zeitraum keine Streamaktivität festgestellt wird. Wenn „idleOutputTimeout“ auf null gesetzt ist, erfolgt kein Stream-Monitoring.
Parameter | |
---|---|
timeout |
long : Maximale Wartezeit in ms. „0“ bedeutet, dass keine Zeitüberschreitung festgelegt ist. |
idleOutputTimeout |
long : Maximale Wartezeit in Millisekunden für die Ausgabe in den Ausgabestreams |
command |
String : Der angegebene Systembefehl und optional Argumente für exec |
Returns | |
---|---|
CommandResult |
CommandResult mit dem Ergebnis des Befehls |
runTimedRetry
public boolean runTimedRetry (long opTimeout, long pollInterval, int attempts, IRunUtil.IRunnableResult runnable)
Blockiert und führt einen Vorgang mehrmals aus, bis er erfolgreich ist.
Parameter | |
---|---|
opTimeout |
long : Maximale Wartezeit in Millisekunden für einen Vorgang |
pollInterval |
long : Wartezeit zwischen den Befehlswiederholungen |
attempts |
int : die maximale Anzahl von Versuchen |
runnable |
IRunUtil.IRunnableResult : IRunUtil.IRunnableResult zum Ausführen |
Returns | |
---|---|
boolean |
true , wenn der Vorgang vor Erreichen der Anzahl der Versuche erfolgreich abgeschlossen wurde. |
runTimedRetryWithOutputMonitor
public boolean runTimedRetryWithOutputMonitor (long opTimeout, long idleOutputTimeout, long pollInterval, int attempts, IRunUtil.IRunnableResult runnable)
Blockiert und führt einen Vorgang mehrmals aus, bis er erfolgreich ist. Außerdem werden die Ausgabestreams auf Aktivität überwacht und der Vorgang abgebrochen, wenn für einen bestimmten Zeitraum keine Streamaktivität festgestellt wird. Wenn „idleOutputTimeout“ auf null gesetzt ist, erfolgt kein Stream-Monitoring.
Parameter | |
---|---|
opTimeout |
long : Maximale Wartezeit in Millisekunden für einen Vorgang |
idleOutputTimeout |
long : Maximale Wartezeit in Millisekunden für die Ausgabe in den Ausgabestreams |
pollInterval |
long : Wartezeit zwischen den Befehlswiederholungen |
attempts |
int : die maximale Anzahl von Versuchen |
runnable |
IRunUtil.IRunnableResult : IRunUtil.IRunnableResult zum Ausführen |
Returns | |
---|---|
boolean |
true , wenn der Vorgang vor Erreichen der Anzahl der Versuche erfolgreich abgeschlossen wurde. |
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 bestimmte Zeit dauert. Außerdem werden die Ausgabestreams auf Aktivität überwacht und der Vorgang abgebrochen, wenn für einen bestimmten Zeitraum keine Streamaktivität festgestellt wird. Wenn „idleOutputTimeout“ auf null gesetzt ist, erfolgt kein Stream-Monitoring.
Parameter | |
---|---|
timeout |
long : Maximale Wartezeit in ms |
idleOutputTimeout |
long : Maximale Wartezeit in Millisekunden für die Ausgabe in den Ausgabestreams |
runnable |
IRunUtil.IRunnableResult : IRunUtil.IRunnableResult zum Ausführen |
logErrors |
boolean : Ob Fehler bei einer Ausnahme protokolliert werden sollen oder nicht. |
Returns | |
---|---|
CommandStatus |
das CommandStatus -Ergebnis des Vorgangs. |
setEnvVariable
public void setEnvVariable (String name, String value)
Legt eine Umgebungsvariable fest, die beim Ausführen von Systembefehlen verwendet werden soll.
Parameter | |
---|---|
name |
String : den Variablennamen |
value |
String : den Variablenwert |
setEnvVariablePriority
public void setEnvVariablePriority (IRunUtil.EnvPriority priority)
Legen Sie fest, ob beim Erstellen eines Prozesses das Entfernen von Umgebungsvariablen eine höhere Priorität hat als das Festlegen.
Standardmäßig hat das Entfernen einer Variablen eine höhere Priorität. Das bedeutet, dass ein Versuch, eine Variable mit demselben Namen festzulegen, fehlschlägt, da die Variable entfernt wird.
Kann nicht für die Standard-IRunUtil
-Instanz verwendet werden.
Parameter | |
---|---|
priority |
IRunUtil.EnvPriority |
setInterruptibleInFuture
public void setInterruptibleInFuture (Thread thread, long timeMs)
Nach einer gewissen Wartezeit als unterbrechbar festlegen
ERROR(/CommandScheduler#shutdownHard())
, um die Schließung zu erzwingen.
Parameter | |
---|---|
thread |
Thread : Der Thread, der unterbrochen werden kann. |
timeMs |
long : Zeit, die gewartet werden soll, bevor die Funktion „Unterbrechbar“ festgelegt wird. |
setLinuxInterruptProcess
public void setLinuxInterruptProcess (boolean interrupt)
Es wird zugelassen, dass der Linux-Befehl „kill“ verwendet wird, um einen Prozess zu beenden, der über die #runTimed-Methoden ausgeführt wird, wenn ein Zeitlimit erreicht wird.
Kann nicht für die Standard-IRunUtil
-Instanz verwendet werden.
Parameter | |
---|---|
interrupt |
boolean |
setRedirectStderrToStdout
public void setRedirectStderrToStdout (boolean redirect)
Legen Sie fest, dass der Standardfehlerstream beim Ausführen von Systembefehlen an den Standardausgabestream umgeleitet wird. Der Standardwert ist „false“.
Parameter | |
---|---|
redirect |
boolean : neuer Wert für die Weiterleitung |
setWorkingDir
public void setWorkingDir (File dir)
Hiermit wird das Arbeitsverzeichnis für Systembefehle festgelegt.
Parameter | |
---|---|
dir |
File : das Arbeitsverzeichnis |
Schlafen
public void sleep (long time)
Hilfsmethode, um für eine bestimmte Zeit zu schlafen und dabei alle Ausnahmen zu ignorieren.
Parameter | |
---|---|
time |
long : Zeit in Millisekunden, nach der der Modus „Ruhe“ aktiviert wird. Werte unter oder gleich 0 werden ignoriert. |
unsetEnvVariable
public void unsetEnvVariable (String key)
Heben Sie die Festlegung einer Umgebungsvariablen auf, damit die Systembefehle ohne diese Umgebungsvariable ausgeführt werden.
Umgebungsvariablen können vom übergeordneten Prozess übernommen werden. Daher müssen wir die Umgebungsvariable aus ProcessBuilder.environment()
löschen.
Parameter | |
---|---|
key |
String : den Variablennamen |
Weitere Informationen