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)
Ermöglicht/nicht zulässige Ausführungsunterbrechungen für den aktuellen Thread. |
static
IRunUtil
|
getDefault()
Rufen Sie einen Verweis auf das Standardobjekt |
void
|
interrupt(Thread thread, String message, ErrorIdentifier errorId)
Unterbricht die laufenden/nächsten Ausführungsvorgänge für den angegebenen Thread. |
void
|
interrupt(Thread thread, String message)
Unterbricht die laufenden/nächsten Ausführungsvorgänge für den angegebenen Thread. |
boolean
|
isInterruptAllowed()
Geben Sie den Unterbrechungsstatus von RunUtil an. |
static
void
|
linkFile(File destRoot, String relToRoot, File target)
Verknüpft |
Process
|
runCmdInBackground(Redirect redirect,
Eine alternative |
Process
|
runCmdInBackground(
Eine alternative |
Process
|
runCmdInBackground(
Wird ein 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. Dieser Vorgang wird abgebrochen, 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 der Vorgang länger als eine angegebene Zeit dauert, und leitet die Ausgabe gegebenenfalls an Dateien weiter. |
CommandResult
|
runTimedCmd(long timeout, String... command)
Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn die Dauer länger als eine angegebene . |
CommandResult
|
runTimedCmdRetry(long timeout, long retryInterval, int attempts, String... command)
Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn die Dauer länger als eine angegebene . |
CommandResult
|
runTimedCmdRetryWithOutputMonitor(long timeout, long idleOutputTimeout, long retryInterval, int attempts, String... command)
Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn die Dauer länger als eine angegebene . |
CommandResult
|
runTimedCmdSilently(long timeout, String... command)
Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn die Dauer länger als eine angegebene . |
CommandResult
|
runTimedCmdSilentlyRetry(long timeout, long retryInterval, int attempts, String... command)
Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn die Dauer länger als eine angegebene . |
CommandResult
|
runTimedCmdWithInput(long timeout, String input, File stdoutFile, File stderrFile, String... command)
Hilfsmethode zum Ausführen eines Systembefehls, zum Abbrechen, wenn der Vorgang länger als eine angegebene Zeit dauert, und leitet die Ausgabe gegebenenfalls an Dateien weiter. |
CommandResult
|
runTimedCmdWithInput(long timeout, String input, String... command)
Hilfsmethode zum Ausführen eines Systembefehls, der eine stdin-Eingabe erfordert, und zum Abbrechen, falls sie dauert länger als die angegebene Zeit. |
CommandResult
|
runTimedCmdWithInput(long timeout, String input,
Hilfsmethode zum Ausführen eines Systembefehls, der eine stdin-Eingabe erfordert, und zum Abbrechen, falls sie dauert länger als die angegebene Zeit. |
CommandResult
|
runTimedCmdWithInputRedirect(long timeout, File inputRedirect, String... command)
Hilfsmethode zum Ausführen eines Systembefehls, bei dem Stdin von einer Datei umgeleitet werden muss, und wird abgebrochen, wenn es 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 der Vorgang länger als eine angegebene Zeit dauert, und leitet die Ausgabe gegebenenfalls an Dateien weiter. |
CommandResult
|
runTimedCmdWithOutputMonitor(long timeout, long idleOutputTimeout, String... command)
Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn die Dauer länger als eine angegebene . |
CommandResult
|
runTimedCmdWithOutputMonitor(long timeout, long idleOutputTimeout, OutputStream stdout, OutputStream stderr, ICacheClient cacheClient, String... command)
Hilfsmethode zum Ausführen eines Systembefehls mit Caching. |
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. Dieser Vorgang wird abgebrochen, 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 der Umgebungsvariable höher ist. Priorität hat, als sie festzulegen. |
void
|
setInterruptibleInFuture(Thread thread, long timeMs)
Nach einer gewissen Wartezeit als unterbrechbar festlegen. |
void
|
setLinuxInterruptProcess(boolean interrupt)
Verwendung von Linux „kill“ zulassen Unterbrechung bei Prozessen, die über #runTimed Methoden ausgeführt werden, eine Zeitüberschreitung erreicht. |
void
|
setRedirectStderrToStdout(boolean redirect)
Legen Sie fest, dass der Standardfehlerstream beim Ausführen des Systems zum Standardausgabestream weitergeleitet wird . |
void
|
setWorkingDir(File dir)
Legt das Arbeitsverzeichnis für Systembefehle fest. |
void
|
sleep(long time)
Hilfsmethode zum Einschlafen für eine bestimmte Zeit, wobei Ausnahmen ignoriert werden. |
static
String
|
toRelative(File start, String target)
|
void
|
unsetEnvVariable(String key)
Hebt die Festlegung einer Umgebungsvariable auf, sodass die Systembefehle ohne diese Umgebungsvariablen 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
AUSFÜHRBARER_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)
Ermöglicht/nicht zulässige Ausführungsunterbrechungen für den aktuellen Thread. Führen Sie ggf. Vorgänge aus:
Der aktuelle Thread kann mit der Methode interrupt(Thread, String)
von anderen Threads unterbrochen werden.
Parameter | |
---|---|
allow |
boolean : Gibt an, ob Ausführungsunterbrechungen für den aktuellen Thread zulässig sind. |
getDefault
public static IRunUtil getDefault ()
Rufen Sie einen Verweis auf das Standardobjekt RunUtil
ab.
Dies ist hilfreich für Aufrufer, die IRunUtil ohne Anpassung verwenden möchten.
Aufrufern, die eine benutzerdefinierte IRunUtil-Instanz benötigen,
(d. h. es muss entweder setEnvVariable(String, String)
oder
setWorkingDir(File)
eine eigene Kopie erstellen.
Returns | |
---|---|
IRunUtil |
unterbrechen
public void interrupt (Thread thread, String message, ErrorIdentifier errorId)
Unterbricht die laufenden/nächsten Ausführungsvorgänge für den angegebenen Thread. Die Ausführungsvorgänge für
Der angegebene Thread gibt RunInterruptedException
aus.
Parameter | |
---|---|
message |
String : die Nachricht für RunInterruptedException . |
errorId |
ErrorIdentifier : Angabe der Ursache der Unterbrechung, sofern bekannt. |
unterbrechen
public void interrupt (Thread thread, String message)
Unterbricht die laufenden/nächsten Ausführungsvorgänge für den angegebenen Thread. Die Ausführungsvorgänge für
Der angegebene Thread gibt RunInterruptedException
aus.
Parameter | |
---|---|
message |
String : die Nachricht für RunInterruptedException . |
isInterruptAllowed
public boolean isInterruptAllowed ()
Geben Sie den Unterbrechungsstatus von RunUtil an.
Returns | |
---|---|
boolean |
"true", wenn die Ausführung unterbrochen werden kann, andernfalls "false". |
linkFile (Datei)
public static void linkFile (File destRoot, String relToRoot, File target)
Verknüpft target
mit einem Ort unter destRoot
.
Wenn die Zieldatei oder der Symlink bereits unter destRoot
vorhanden ist, wird die Datei
werden nicht verknüpft.
Parameter | |
---|---|
destRoot |
File : Stamm des Ziels |
relToRoot |
String : Der relative Pfad vom Zielverzeichnis zum Stammverzeichnis. |
target |
File : Die Zieldatei, die verknüpft werden soll. |
Ausgabe | |
---|---|
|
wenn die Zieldatei nicht verknüpft werden kann. |
runCmdInBackground
public Process runCmdInBackground (Redirect redirect,command)
Eine alternative runCmdInBackground(String)
-Methode, die die Befehlsargumente akzeptiert
im Format ERROR(/List)
.
Parameter | |
---|---|
redirect |
Redirect : Die ERROR(/Redirect) , die auf ProcessBuilder angewendet werden soll. |
command |
: ERROR(/List) , die den angegebenen Systembefehl und optional Argumente enthält
zum Ausführen |
Returns | |
---|---|
Process |
den Process des ausgeführten Befehls |
runCmdInBackground
public Process runCmdInBackground (command)
Eine alternative runCmdInBackground(String)
-Methode, die die Befehlsargumente akzeptiert
im Format ERROR(/List)
.
Parameter | |
---|---|
command |
: ERROR(/List) , die den angegebenen Systembefehl und optional Argumente enthält
zum Ausführen |
Returns | |
---|---|
Process |
den Process des ausgeführten Befehls |
runCmdInBackground
public Process runCmdInBackground (command, OutputStream output)
Wird ein Befehl mit einem ERROR(/OutputStream)
ausgeführt, wird die Ausgabe des Befehls protokolliert.
Stdout und stderr werden zusammengeführt.
Parameter | |
---|---|
command |
: der auszuführende Befehl |
output |
OutputStream : der OutputStream zum Speichern der Ausgabe |
Returns | |
---|---|
Process |
Process , der den Befehl ausführt |
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 die auszuführenden Argumente |
Returns | |
---|---|
Process |
den 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 ProcessBuilder angewendet werden soll. |
command |
String : der angegebene Systembefehl und optional die auszuführenden Argumente |
Returns | |
---|---|
Process |
den Process des ausgeführten Befehls |
runEscalatingTimedWiederholen
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 Vorgangsversuchen exponentiell erhöhen. Dies ist zur Verwendung wenn Sie einen Vorgang wie das Abfragen eines Servers ausführen, damit dieser Zeit für die Wiederherstellung bleibt, falls er ist vorübergehend nicht verfügbar.
Parameter | |
---|---|
opTimeout |
long : maximale Wartezeit in ms für einen einzelnen Vorgangsversuch |
initialPollInterval |
long : anfängliche Wartezeit zwischen Vorgangsversuchen |
maxPollInterval |
long : die maximale Wartezeit zwischen Vorgangversuchen |
maxTime |
long : die ungefähre Gesamtzeit, die für das weitere Ausführen des Vorgangs benötigt wird. |
runnable |
IRunUtil.IRunnableResult : Auszuführende IRunUtil.IRunnableResult |
Returns | |
---|---|
boolean |
true , wenn der Vorgang vor Ablauf von „maxTime“ erfolgreich abgeschlossen wurde |
runFixedTimedWiederholen
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 ms für einen einzelnen Vorgangsversuch |
pollInterval |
long : anfängliche Wartezeit zwischen Vorgangsversuchen |
maxTime |
long : die ungefähre Gesamtzeit, die für das weitere Ausführen des Vorgangs benötigt wird. |
runnable |
IRunUtil.IRunnableResult : Auszuführende IRunUtil.IRunnableResult |
Returns | |
---|---|
boolean |
true , wenn der Vorgang vor Ablauf von „maxTime“ erfolgreich abgeschlossen wurde |
runFixedTimedWiederholenWithOutputMonitor
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. Überwacht außerdem Ausgabestreams für Aktivität; wird abgebrochen, wenn für eine bestimmte Zeit keine Streamaktivität festgestellt wird. Wenn für „idleOutputTimeout“ null festgelegt ist, erfolgt kein Streammonitoring.
Parameter | |
---|---|
opTimeout |
long : maximale Wartezeit in ms für einen einzelnen Vorgangsversuch |
idleOutputTimeout |
long : maximale Wartezeit in ms auf die Ausgabe an die Ausgabestreams |
pollInterval |
long : anfängliche Wartezeit zwischen Vorgangsversuchen |
maxTime |
long : die ungefähre Gesamtzeit, die für das weitere Ausführen des Vorgangs benötigt wird. |
runnable |
IRunUtil.IRunnableResult : Auszuführende IRunUtil.IRunnableResult |
Returns | |
---|---|
boolean |
true , wenn der Vorgang vor Ablauf von „maxTime“ erfolgreich abgeschlossen wurde |
runTimed (Laufzeit)
public CommandStatus runTimed (long timeout, IRunUtil.IRunnableResult runnable, boolean logErrors)
Blockiert und führt einen Vorgang aus. Dieser Vorgang wird abgebrochen, wenn er länger als eine angegebene Zeit dauert.
Parameter | |
---|---|
timeout |
long : maximale Wartezeit in ms |
runnable |
IRunUtil.IRunnableResult : Auszuführende IRunUtil.IRunnableResult |
logErrors |
boolean : Protokolliert Fehler bei oder ohne Ausnahme. |
Returns | |
---|---|
CommandStatus |
das Ergebnis des Vorgangs CommandStatus . |
runTimedCmd
public CommandResult runTimedCmd (long timeout, OutputStream stdout, OutputStream stderr, String... command)
Hilfsmethode zum Ausführen eines Systembefehls, zum Abbrechen, wenn der Vorgang länger als eine angegebene Zeit dauert,
und leitet die Ausgabe gegebenenfalls an Dateien weiter. Wenn ERROR(/OutputStream)
auf diese Weise angegeben werden,
bleiben sie am Ende der Funktion offen.
Parameter | |
---|---|
timeout |
long : Maximale Wartezeit in ms. 0 bedeutet, dass es keine Zeitüberschreitung gibt. |
stdout |
OutputStream : ERROR(/OutputStream) , an den die Standardausgabe weitergeleitet wird. Kann null sein. |
stderr |
OutputStream : ERROR(/OutputStream) , an den die Fehlerausgabe weitergeleitet wird. Kann null sein. |
command |
String : der angegebene Systembefehl und optional die auszuführenden Argumente |
Returns | |
---|---|
CommandResult |
CommandResult mit dem Ergebnis der Befehlsausführung |
runTimedCmd
public CommandResult runTimedCmd (long timeout, String... command)
Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn die Dauer länger als eine angegebene .
Parameter | |
---|---|
timeout |
long : maximale Wartezeit in ms. 0 bedeutet, dass es keine Zeitüberschreitung gibt. |
command |
String : der angegebene Systembefehl und optional die auszuführenden Argumente |
Returns | |
---|---|
CommandResult |
CommandResult mit dem Ergebnis der Befehlsausführung |
runTimedCmdWiederholen
public CommandResult runTimedCmdRetry (long timeout, long retryInterval, int attempts, String... command)
Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn die Dauer länger als eine angegebene .
Parameter | |
---|---|
timeout |
long : maximale Wartezeit in ms für jeden Versuch |
retryInterval |
long : Wartezeit zwischen Befehlswiederholungen |
attempts |
int : die maximale Anzahl von Versuchen für den Versuch |
command |
String : der angegebene Systembefehl und optional die auszuführenden Argumente |
Returns | |
---|---|
CommandResult |
CommandResult mit dem Ergebnis der Befehlsausführung |
runTimedCmdRepeatWithOutputMonitor
public CommandResult runTimedCmdRetryWithOutputMonitor (long timeout, long idleOutputTimeout, long retryInterval, int attempts, String... command)
Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn die Dauer länger als eine angegebene . Überwacht auch die Ausgabestreams auf Aktivität; der Vorgang wird abgebrochen, wenn keine Streamaktivität für einen bestimmten Zeitraum beobachtet werden. Wenn „IdleOutputTimeout“ auf null gesetzt ist, wird der Stream nicht überwacht erfolgt.
Parameter | |
---|---|
timeout |
long : maximale Wartezeit in ms für jeden Versuch |
idleOutputTimeout |
long : maximale Wartezeit in ms auf die Ausgabe an die Ausgabestreams |
retryInterval |
long : Wartezeit zwischen Befehlswiederholungen |
attempts |
int : die maximale Anzahl von Versuchen für den Versuch |
command |
String : der angegebene Systembefehl und optional die auszuführenden Argumente |
Returns | |
---|---|
CommandResult |
CommandResult mit dem Ergebnis der Befehlsausführung |
runTimedCmdSilently
public CommandResult runTimedCmdSilently (long timeout, String... command)
Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn die Dauer länger als eine angegebene
. Ähnlich wie runTimedCmd(long, String)
, protokolliert jedoch keine Fehler unter
Ausnahme.
Parameter | |
---|---|
timeout |
long : maximale Wartezeit in ms |
command |
String : der angegebene Systembefehl und optional die auszuführenden Argumente |
Returns | |
---|---|
CommandResult |
CommandResult mit dem Ergebnis der Befehlsausführung |
runTimedCmdSilentlyWiederholen
public CommandResult runTimedCmdSilentlyRetry (long timeout, long retryInterval, int attempts, String... command)
Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn die Dauer länger als eine angegebene
. Ähnlich wie runTimedCmdRetry(long, long, int, String[])
,
aber protokolliert bei Ausnahme
keine Fehler.
Parameter | |
---|---|
timeout |
long : maximale Wartezeit in ms |
retryInterval |
long : Wartezeit zwischen Befehlswiederholungen |
attempts |
int : die maximale Anzahl von Versuchen für den Versuch |
command |
String : der angegebene Systembefehl und optional die auszuführenden Argumente |
Returns | |
---|---|
CommandResult |
CommandResult mit dem Ergebnis der Befehlsausführung |
runTimedCmdWithInput
public CommandResult runTimedCmdWithInput (long timeout, String input, File stdoutFile, File stderrFile, String... command)
Hilfsmethode zum Ausführen eines Systembefehls, zum Abbrechen, wenn der Vorgang länger als eine angegebene Zeit dauert, und leitet die Ausgabe gegebenenfalls an Dateien weiter.
Parameter | |
---|---|
timeout |
long : Maximale Wartezeit in ms. 0 bedeutet, dass es keine Zeitüberschreitung gibt. |
input |
String : die an die Verarbeitung zu übergebende stdin-Eingabe |
stdoutFile |
File : ERROR(/File) , an den die Standardausgabe weitergeleitet wird. Kann null sein. |
stderrFile |
File : ERROR(/File) , an den die Fehlerausgabe weitergeleitet wird. Kann null sein. |
command |
String : der angegebene Systembefehl und optional die auszuführenden Argumente |
Returns | |
---|---|
CommandResult |
CommandResult mit dem Ergebnis der Befehlsausführung |
runTimedCmdWithInput
public CommandResult runTimedCmdWithInput (long timeout, String input, String... command)
Hilfsmethode zum Ausführen eines Systembefehls, der eine stdin-Eingabe erfordert, und zum Abbrechen, falls sie dauert länger als die angegebene Zeit.
Parameter | |
---|---|
timeout |
long : maximale Wartezeit in ms |
input |
String : die an die Verarbeitung zu übergebende stdin-Eingabe |
command |
String : der angegebene Systembefehl und optional die auszuführenden Argumente |
Returns | |
---|---|
CommandResult |
CommandResult mit dem Ergebnis der Befehlsausführung |
runTimedCmdWithInput
public CommandResult runTimedCmdWithInput (long timeout, String input,command)
Hilfsmethode zum Ausführen eines Systembefehls, der eine stdin-Eingabe erfordert, und zum Abbrechen, falls sie dauert länger als die angegebene Zeit.
Parameter | |
---|---|
timeout |
long : maximale Wartezeit in ms |
input |
String : die an die Verarbeitung zu übergebende stdin-Eingabe |
command |
: ERROR(/List) , die den Systembefehl und optional die auszuführenden Argumente enthält |
Returns | |
---|---|
CommandResult |
CommandResult mit dem Ergebnis der Befehlsausführung |
runTimedCmdWithInputWeiterleitung
public CommandResult runTimedCmdWithInputRedirect (long timeout, File inputRedirect, String... command)
Hilfsmethode zum Ausführen eines Systembefehls, bei dem Stdin von einer Datei umgeleitet werden muss, und wird abgebrochen, wenn es länger als eine angegebene Zeit dauert.
Parameter | |
---|---|
timeout |
long : maximale Wartezeit in ms |
inputRedirect |
File : Der ERROR(/File) , der als Standardeingabe mit ProcessBuilder.redirectInput() weitergeleitet werden soll. Wenn null, wird stdin nicht weitergeleitet. |
command |
String : der angegebene Systembefehl und optional die auszuführenden Argumente |
Returns | |
---|---|
CommandResult |
CommandResult mit dem Ergebnis der Befehlsausführung |
runTimedCmdWithOutputMonitor
public CommandResult runTimedCmdWithOutputMonitor (long timeout, long idleOutputTimeout, OutputStream stdout, OutputStream stderr, String... command)
Hilfsmethode zum Ausführen eines Systembefehls, zum Abbrechen, wenn der Vorgang länger als eine angegebene Zeit dauert,
und leitet die Ausgabe gegebenenfalls an Dateien weiter. Wenn ERROR(/OutputStream)
auf diese Weise angegeben werden,
bleiben sie am Ende der Funktion offen.
Parameter | |
---|---|
timeout |
long : Maximale Wartezeit in ms. 0 bedeutet, dass es keine Zeitüberschreitung gibt. |
idleOutputTimeout |
long : maximale Wartezeit in ms auf die Ausgabe an die Ausgabestreams |
stdout |
OutputStream : ERROR(/OutputStream) , an den die Standardausgabe weitergeleitet wird. Kann null sein. |
stderr |
OutputStream : ERROR(/OutputStream) , an den die Fehlerausgabe weitergeleitet wird. Kann null sein. |
command |
String : der angegebene Systembefehl und optional die auszuführenden Argumente |
Returns | |
---|---|
CommandResult |
CommandResult mit dem Ergebnis der Befehlsausführung |
runTimedCmdWithOutputMonitor
public CommandResult runTimedCmdWithOutputMonitor (long timeout, long idleOutputTimeout, String... command)
Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn die Dauer länger als eine angegebene . Überwacht auch die Ausgabestreams auf Aktivität; der Vorgang wird abgebrochen, wenn keine Streamaktivität für einen bestimmten Zeitraum beobachtet werden. Wenn „IdleOutputTimeout“ auf null gesetzt ist, wird der Stream nicht überwacht erfolgt.
Parameter | |
---|---|
timeout |
long : maximale Wartezeit in ms. 0 bedeutet, dass es keine Zeitüberschreitung gibt. |
idleOutputTimeout |
long : maximale Wartezeit in ms auf die Ausgabe an die Ausgabestreams |
command |
String : der angegebene Systembefehl und optional die auszuführenden Argumente |
Returns | |
---|---|
CommandResult |
CommandResult mit dem Ergebnis der Befehlsausführung |
runTimedCmdWithOutputMonitor
public CommandResult runTimedCmdWithOutputMonitor (long timeout, long idleOutputTimeout, OutputStream stdout, OutputStream stderr, ICacheClient cacheClient, String... command)
Hilfsmethode zum Ausführen eines Systembefehls mit Caching.
Wenn cacheClient
angegeben ist, wird das Caching aktiviert. Wenn der Cache
verfügbar ist, wird das im Cache gespeicherte Ergebnis zurückgegeben. Andernfalls runTimedCmdWithOutputMonitor(long, long, OutputStream, OutputStream, String)
wird verwendet, um den Befehl auszuführen, und das Ergebnis wird für das Caching hochgeladen.
Parameter | |
---|---|
timeout |
long : Maximale Wartezeit in ms. 0 bedeutet, dass es keine Zeitüberschreitung gibt. |
idleOutputTimeout |
long : maximale Wartezeit in ms auf die Ausgabe an die Ausgabestreams. |
stdout |
OutputStream : ERROR(/OutputStream) , an den die Standardausgabe weitergeleitet wird. Kann null sein. |
stderr |
OutputStream : ERROR(/OutputStream) , an den die Fehlerausgabe weitergeleitet wird. Kann null sein. |
cacheClient |
ICacheClient : Eine Instanz von ICacheClient , die für das Caching verwendet wird. |
command |
String : der angegebene Systembefehl und optional die auszuführenden Argumente. |
Returns | |
---|---|
CommandResult |
Eine CommandResult mit dem Ergebnis der Befehlsausführung. |
runTimedWiederholen
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 ms für einen Vorgangsversuch |
pollInterval |
long : Wartezeit zwischen Befehlswiederholungen |
attempts |
int : die maximale Anzahl von Versuchen für den Versuch |
runnable |
IRunUtil.IRunnableResult : Auszuführende IRunUtil.IRunnableResult |
Returns | |
---|---|
boolean |
true , wenn der Vorgang erfolgreich abgeschlossen wurde, bevor Versuche erreicht wurden. |
runTimedWiederholenWithOutputMonitor
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. Überwacht außerdem Ausgabestreams für Aktivität; wird abgebrochen, wenn für eine bestimmte Zeit keine Streamaktivität festgestellt wird. Wenn für „idleOutputTimeout“ null festgelegt ist, erfolgt kein Streammonitoring.
Parameter | |
---|---|
opTimeout |
long : maximale Wartezeit in ms für einen Vorgangsversuch |
idleOutputTimeout |
long : maximale Wartezeit in ms auf die Ausgabe an die Ausgabestreams |
pollInterval |
long : Wartezeit zwischen Befehlswiederholungen |
attempts |
int : die maximale Anzahl von Versuchen für den Versuch |
runnable |
IRunUtil.IRunnableResult : Auszuführende IRunUtil.IRunnableResult |
Returns | |
---|---|
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. Dieser Vorgang wird abgebrochen, wenn er länger als eine angegebene Zeit dauert. Ebenfalls überwacht die Ausgabestreams auf Aktivität. Der Vorgang wird abgebrochen, wenn für einen Zeitraum zu einer bestimmten Zeit. Wenn für „idleOutputTimeout“ null festgelegt ist, erfolgt kein Streammonitoring.
Parameter | |
---|---|
timeout |
long : maximale Wartezeit in ms |
idleOutputTimeout |
long : maximale Wartezeit in ms auf die Ausgabe an die Ausgabestreams |
runnable |
IRunUtil.IRunnableResult : Auszuführende IRunUtil.IRunnableResult |
logErrors |
boolean : Protokolliert Fehler bei oder ohne Ausnahme. |
Returns | |
---|---|
CommandStatus |
das Ergebnis des Vorgangs CommandStatus . |
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 Wert der Variablen |
setEnvVariablePriority (setEnvVariablePriorität)
public void setEnvVariablePriority (IRunUtil.EnvPriority priority)
Entscheiden Sie, ob beim Erstellen eines Prozesses das Deaktivieren der Umgebungsvariable höher ist.
Priorität hat, als sie festzulegen.
Standardmäßig hat das Aufheben der Einstellung eine höhere Priorität, d. h., wenn beim Versuch, eine Variable mit der
festgelegt wird, kann dies nicht passieren,
da die Variable nicht mehr definiert wird.
Kann nicht für die Standardinstanz IRunUtil
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 Beendigung zu erzwingen.
Parameter | |
---|---|
thread |
Thread : der Thread, der unterbrochen werden soll. |
timeMs |
long : Wartezeit, bevor die Einstellung „Unterbrechbar“ festgelegt wird. |
setLinuxInterruptProcess
public void setLinuxInterruptProcess (boolean interrupt)
Verwendung von Linux „kill“ zulassen Unterbrechung bei Prozessen, die über #runTimed Methoden ausgeführt werden,
eine Zeitüberschreitung erreicht.
Kann nicht für die Standardinstanz IRunUtil
verwendet werden.
Parameter | |
---|---|
interrupt |
boolean |
setWeiterleitungStderrToStdout
public void setRedirectStderrToStdout (boolean redirect)
Legen Sie fest, dass der Standardfehlerstream beim Ausführen des Systems zum Standardausgabestream weitergeleitet wird . Der Anfangswert ist "false".
Parameter | |
---|---|
redirect |
boolean : neuer Wert dafür, ob eine Weiterleitung erfolgen 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 Einschlafen für eine bestimmte Zeit, wobei Ausnahmen ignoriert werden.
Parameter | |
---|---|
time |
long : ms bis zum Ruhemodus. Werte kleiner oder gleich 0 werden ignoriert. |
ToVerwandte
public static String toRelative (File start, String target)
Parameter | |
---|---|
start |
File |
target |
String |
Returns | |
---|---|
String |
UnverankerteVariable
public void unsetEnvVariable (String key)
Hebt die Festlegung einer Umgebungsvariable auf, sodass die Systembefehle ohne diese Umgebungsvariablen ausgeführt werden.
Umgebungsvariablen können vom übergeordneten Prozess übernommen werden, daher müssen wir
die Umgebungsvariable aus ProcessBuilder.environment()
Parameter | |
---|---|
key |
String : der Variablenname |
Weitere Informationen: