RunUtil
public
class
RunUtil
extends Object
implements
IRunUtil
| java.lang.Object | |
| ↳ | com.android.tradefed.util.RunUtil |
Collection de méthodes d'assistance pour exécuter des opérations.
Résumé
Constantes | |
|---|---|
String |
INHERITIO_PREFIX
|
String |
RUNNABLE_NOTIFIER_NAME
|
Constructeurs publics | |
|---|---|
RunUtil()
Créez un objet |
|
RunUtil(boolean inheritEnvVars)
|
|
Méthodes publiques | |
|---|---|
void
|
allowInterrupt(boolean allow)
Autorise ou interdit les interruptions d'exécution sur le thread actuel. |
ProcessBuilder
|
createProcessBuilder(Redirect redirect,
|
static
IRunUtil
|
getDefault()
Obtenez une référence à l'objet |
void
|
interrupt(Thread thread, String message, ErrorIdentifier errorId)
Interrompt les opérations d'exécution en cours/à venir sur le thread donné. |
void
|
interrupt(Thread thread, String message)
Interrompt les opérations d'exécution en cours/à venir sur le thread donné. |
boolean
|
isInterruptAllowed()
Indique l'état d'interruption de RunUtil. |
Process
|
runCmdInBackground(Redirect redirect,
Méthode |
Process
|
runCmdInBackground(
Méthode |
Process
|
runCmdInBackground(
L'exécution d'une commande avec |
Process
|
runCmdInBackground(String... command)
Méthode d'assistance pour exécuter une commande système de manière asynchrone. |
Process
|
runCmdInBackground(Redirect redirect, String... command)
Méthode d'assistance pour exécuter une commande système de manière asynchrone. |
boolean
|
runEscalatingTimedRetry(long opTimeout, long initialPollInterval, long maxPollInterval, long maxTime, IRunUtil.IRunnableResult runnable)
Bloque et exécute une opération plusieurs fois jusqu'à ce qu'elle aboutisse. |
boolean
|
runFixedTimedRetry(long opTimeout, long pollInterval, long maxTime, IRunUtil.IRunnableResult runnable)
Bloque et exécute une opération plusieurs fois jusqu'à ce qu'elle aboutisse. |
boolean
|
runFixedTimedRetryWithOutputMonitor(long opTimeout, long idleOutputTimeout, long pollInterval, long maxTime, IRunUtil.IRunnableResult runnable)
Bloque et exécute une opération plusieurs fois jusqu'à ce qu'elle aboutisse. |
CommandStatus
|
runTimed(long timeout, IRunUtil.IRunnableResult runnable, boolean logErrors)
Bloque et exécute une opération, en l'annulant si elle prend plus de temps que prévu. |
CommandResult
|
runTimedCmd(long timeout, OutputStream stdout, OutputStream stderr, String... command)
Méthode d'assistance pour exécuter une commande système, abandonner si elle prend plus de temps que spécifié et rediriger la sortie vers des fichiers si spécifié. |
CommandResult
|
runTimedCmd(long timeout, String... command)
Méthode d'assistance pour exécuter une commande système et l'annuler si elle prend plus de temps que prévu. |
CommandResult
|
runTimedCmdRetry(long timeout, long retryInterval, int attempts, String... command)
Méthode d'assistance pour exécuter une commande système et l'annuler si elle prend plus de temps que prévu. |
CommandResult
|
runTimedCmdRetryWithOutputMonitor(long timeout, long idleOutputTimeout, long retryInterval, int attempts, String... command)
Méthode d'assistance pour exécuter une commande système et l'annuler si elle prend plus de temps que prévu. |
CommandResult
|
runTimedCmdSilently(long timeout, String... command)
Méthode d'assistance pour exécuter une commande système et l'annuler si elle prend plus de temps que prévu. |
CommandResult
|
runTimedCmdSilentlyRetry(long timeout, long retryInterval, int attempts, String... command)
Méthode d'assistance pour exécuter une commande système et l'annuler si elle prend plus de temps que prévu. |
CommandResult
|
runTimedCmdWithInput(long timeout, String input, File stdoutFile, File stderrFile, String... command)
Méthode d'assistance pour exécuter une commande système, abandonner si elle prend plus de temps que spécifié et rediriger la sortie vers des fichiers si spécifié. |
CommandResult
|
runTimedCmdWithInput(long timeout, String input, String... command)
Méthode d'assistance pour exécuter une commande système nécessitant une entrée stdin et l'annuler si elle prend plus de temps que spécifié. |
CommandResult
|
runTimedCmdWithInput(long timeout, String input,
Méthode d'assistance pour exécuter une commande système nécessitant une entrée stdin et l'annuler si elle prend plus de temps que spécifié. |
CommandResult
|
runTimedCmdWithInputRedirect(long timeout, File inputRedirect, String... command)
Méthode d'assistance permettant d'exécuter une commande système qui nécessite la redirection de Stdin à partir d'un fichier et l'abandon si elle prend plus de temps que spécifié. |
CommandResult
|
runTimedCmdWithOutputMonitor(long timeout, long idleOutputTimeout, OutputStream stdout, OutputStream stderr, String... command)
Méthode d'assistance pour exécuter une commande système, abandonner si elle prend plus de temps que spécifié et rediriger la sortie vers des fichiers si spécifié. |
CommandResult
|
runTimedCmdWithOutputMonitor(long timeout, long idleOutputTimeout, String... command)
Méthode d'assistance pour exécuter une commande système et l'annuler si elle prend plus de temps que prévu. |
boolean
|
runTimedRetry(long opTimeout, long pollInterval, int attempts, IRunUtil.IRunnableResult runnable)
Bloque et exécute une opération plusieurs fois jusqu'à ce qu'elle aboutisse. |
boolean
|
runTimedRetryWithOutputMonitor(long opTimeout, long idleOutputTimeout, long pollInterval, int attempts, IRunUtil.IRunnableResult runnable)
Bloque et exécute une opération plusieurs fois jusqu'à ce qu'elle aboutisse. |
CommandStatus
|
runTimedWithOutputMonitor(long timeout, long idleOutputTimeout, IRunUtil.IRunnableResult runnable, boolean logErrors)
Bloque et exécute une opération, en l'annulant si elle prend plus de temps que prévu. |
void
|
setEnvVariable(String name, String value)
Définit une variable d'environnement à utiliser lors de l'exécution des commandes système. |
void
|
setEnvVariablePriority(IRunUtil.EnvPriority priority)
Décidez si, lors de la création d'un processus, la suppression d'une variable d'environnement est plus prioritaire que sa définition. |
void
|
setInterruptibleInFuture(Thread thread, long timeMs)
Définissez-le comme interruptible après un certain temps d'attente. |
void
|
setLinuxInterruptProcess(boolean interrupt)
Permet d'utiliser l'interruption "kill" de Linux sur les processus exécutés via les méthodes #runTimed lorsqu'ils atteignent un délai d'expiration. |
void
|
setRedirectStderrToStdout(boolean redirect)
Définissez le flux d'erreur standard pour qu'il soit redirigé vers le flux de sortie standard lors de l'exécution des commandes système. |
void
|
setWorkingDir(File dir)
Définit le répertoire de travail pour les commandes système. |
void
|
sleep(long time)
Méthode d'assistance pour mettre en veille pendant une durée donnée, en ignorant les exceptions. |
void
|
unsetEnvVariable(String key)
Annule la définition d'une variable d'environnement afin que les commandes système s'exécutent sans cette variable.
Les variables d'environnement peuvent hériter du processus parent. Nous devons donc supprimer la variable d'environnement de |
Constantes
INHERITIO_PREFIX
public static final String INHERITIO_PREFIX
Valeur de constante : "inheritio-"
RUNNABLE_NOTIFIER_NAME
public static final String RUNNABLE_NOTIFIER_NAME
Valeur constante : "RunnableNotifier"
Constructeurs publics
RunUtil
public RunUtil (boolean inheritEnvVars)
| Paramètres | |
|---|---|
inheritEnvVars |
boolean |
Méthodes publiques
allowInterrupt
public void allowInterrupt (boolean allow)
Autorise ou interdit les interruptions d'exécution sur le thread actuel. Si cela est autorisé, les opérations du thread actuel peuvent être interrompues à partir d'autres threads via la méthode interrupt(Thread, String).
| Paramètres | |
|---|---|
allow |
boolean : indique s'il faut autoriser les interruptions d'exécution sur le thread actuel. |
createProcessBuilder
public ProcessBuilder createProcessBuilder (Redirect redirect,
commandList,
boolean enableCache) | Paramètres | |
|---|---|
redirect |
Redirect |
commandList |
|
enableCache |
boolean |
| Renvoie | |
|---|---|
ProcessBuilder |
|
getDefault
public static IRunUtil getDefault ()
Obtenez une référence à l'objet RunUtil par défaut.
Cela est utile pour les appelants qui souhaitent utiliser IRunUtil sans personnalisation.
Il est recommandé aux appelants qui ont besoin d'une instance IRunUtil personnalisée (c'est-à-dire qui doivent appeler setEnvVariable(String, String) ou setWorkingDir(File)) de créer leur propre copie.
| Renvoie | |
|---|---|
IRunUtil |
|
interrompre
public void interrupt (Thread thread,
String message,
ErrorIdentifier errorId)Interrompt les opérations d'exécution en cours/à venir sur le thread donné. Les opérations d'exécution sur le thread donné généreront RunInterruptedException.
| Paramètres | |
|---|---|
message |
String : message pour RunInterruptedException. |
errorId |
ErrorIdentifier : représente la cause de l'interruption, le cas échéant. |
interrompre
public void interrupt (Thread thread,
String message)Interrompt les opérations d'exécution en cours/à venir sur le thread donné. Les opérations d'exécution sur le thread donné généreront RunInterruptedException.
| Paramètres | |
|---|---|
message |
String : message pour RunInterruptedException. |
isInterruptAllowed
public boolean isInterruptAllowed ()
Indique l'état d'interruption de RunUtil.
| Renvoie | |
|---|---|
boolean |
"true" si l'exécution peut être interrompue, "false" dans le cas contraire. |
runCmdInBackground
public Process runCmdInBackground (Redirect redirect,
command) Méthode runCmdInBackground(String) alternative qui accepte les arguments de commande au format ERROR(/List).
| Paramètres | |
|---|---|
redirect |
Redirect : ERROR(/Redirect) à appliquer à ProcessBuilder. |
command |
: ERROR(/List) contenant la commande système spécifiée et, éventuellement, les arguments à exécuter |
| Renvoie | |
|---|---|
Process |
le Process de la commande exécutée. |
runCmdInBackground
public Process runCmdInBackground (command)
Méthode runCmdInBackground(String) alternative qui accepte les arguments de commande au format ERROR(/List).
| Paramètres | |
|---|---|
command |
: ERROR(/List) contenant la commande système spécifiée et, éventuellement, les arguments à exécuter |
| Renvoie | |
|---|---|
Process |
le Process de la commande exécutée. |
runCmdInBackground
public Process runCmdInBackground (command, OutputStream output)
L'exécution d'une commande avec ERROR(/OutputStream) enregistre la sortie de la commande.
Stdout et stderr sont fusionnés.
| Paramètres | |
|---|---|
command |
: commande à exécuter |
output |
OutputStream : OutputStream pour enregistrer la sortie |
| Renvoie | |
|---|---|
Process |
le Process exécutant la commande ; |
runCmdInBackground
public Process runCmdInBackground (String... command)
Méthode d'assistance pour exécuter une commande système de manière asynchrone.
Le résultat arrive immédiatement après le lancement de la commande.
| Paramètres | |
|---|---|
command |
String : commande système spécifiée et, éventuellement, arguments à exécuter |
| Renvoie | |
|---|---|
Process |
le Process de la commande exécutée. |
runCmdInBackground
public Process runCmdInBackground (Redirect redirect,
String... command)Méthode d'assistance pour exécuter une commande système de manière asynchrone.
Le résultat arrive immédiatement après le lancement de la commande.
| Paramètres | |
|---|---|
redirect |
Redirect : ERROR(/Redirect) à appliquer à ProcessBuilder. |
command |
String : commande système spécifiée et, éventuellement, arguments à exécuter |
| Renvoie | |
|---|---|
Process |
le Process de la commande exécutée. |
runEscalatingTimedRetry
public boolean runEscalatingTimedRetry (long opTimeout,
long initialPollInterval,
long maxPollInterval,
long maxTime,
IRunUtil.IRunnableResult runnable)Bloque et exécute une opération plusieurs fois jusqu'à ce qu'elle aboutisse.
Augmentez de manière exponentielle le temps d'attente entre les tentatives d'opération. Cette méthode est destinée à être utilisée lors d'une opération telle que l'interrogation d'un serveur, pour lui donner le temps de se rétablir en cas d'indisponibilité temporaire.
| Paramètres | |
|---|---|
opTimeout |
long : durée d'attente maximale en ms pour une tentative d'opération unique |
initialPollInterval |
long : délai d'attente initial entre les tentatives d'opération |
maxPollInterval |
long : durée maximale d'attente entre les tentatives d'opération |
maxTime |
long : durée maximale approximative totale pour réessayer l'opération |
runnable |
IRunUtil.IRunnableResult : IRunUtil.IRunnableResult à exécuter |
| Renvoie | |
|---|---|
boolean |
true si l'opération s'est terminée avant l'expiration de maxTime |
runFixedTimedRetry
public boolean runFixedTimedRetry (long opTimeout,
long pollInterval,
long maxTime,
IRunUtil.IRunnableResult runnable)Bloque et exécute une opération plusieurs fois jusqu'à ce qu'elle aboutisse.
| Paramètres | |
|---|---|
opTimeout |
long : durée d'attente maximale en ms pour une tentative d'opération unique |
pollInterval |
long : délai d'attente initial entre les tentatives d'opération |
maxTime |
long : durée maximale approximative totale pour réessayer l'opération |
runnable |
IRunUtil.IRunnableResult : IRunUtil.IRunnableResult à exécuter |
| Renvoie | |
|---|---|
boolean |
true si l'opération s'est terminée avant l'expiration de maxTime |
runFixedTimedRetryWithOutputMonitor
public boolean runFixedTimedRetryWithOutputMonitor (long opTimeout,
long idleOutputTimeout,
long pollInterval,
long maxTime,
IRunUtil.IRunnableResult runnable)Bloque et exécute une opération plusieurs fois jusqu'à ce qu'elle aboutisse. Il surveille également l'activité des flux de sortie et l'annule si aucune activité de flux n'est observée pendant une durée spécifiée. Si idleOutputTimeout est défini sur zéro, aucune surveillance du flux n'est effectuée.
| Paramètres | |
|---|---|
opTimeout |
long : durée d'attente maximale en ms pour une tentative d'opération unique |
idleOutputTimeout |
long : durée maximale d'attente en ms pour la sortie sur les flux de sortie |
pollInterval |
long : délai d'attente initial entre les tentatives d'opération |
maxTime |
long : durée maximale approximative totale pour réessayer l'opération |
runnable |
IRunUtil.IRunnableResult : IRunUtil.IRunnableResult à exécuter |
| Renvoie | |
|---|---|
boolean |
true si l'opération s'est terminée avant l'expiration de maxTime |
runTimed
public CommandStatus runTimed (long timeout, IRunUtil.IRunnableResult runnable, boolean logErrors)
Bloque et exécute une opération, en l'annulant si elle prend plus de temps que prévu.
| Paramètres | |
|---|---|
timeout |
long : temps d'attente maximal en ms |
runnable |
IRunUtil.IRunnableResult : IRunUtil.IRunnableResult à exécuter |
logErrors |
boolean : indique si les erreurs doivent être consignées en cas d'exception. |
| Renvoie | |
|---|---|
CommandStatus |
le résultat CommandStatus de l'opération. |
runTimedCmd
public CommandResult runTimedCmd (long timeout, OutputStream stdout, OutputStream stderr, String... command)
Méthode d'assistance pour exécuter une commande système, abandonner si elle prend plus de temps que spécifié et rediriger la sortie vers des fichiers si spécifié. Lorsque les ERROR(/OutputStream) sont fournis de cette manière, ils restent ouverts à la fin de la fonction.
| Paramètres | |
|---|---|
timeout |
long : délai maximal d'attente en ms. 0 signifie aucun délai. |
stdout |
OutputStream : ERROR(/OutputStream) où la sortie standard sera redirigée. Peut être nul. |
stderr |
OutputStream : ERROR(/OutputStream) où la sortie d'erreur sera redirigée. Peut être nul. |
command |
String : commande système spécifiée et, éventuellement, arguments à exécuter |
| Renvoie | |
|---|---|
CommandResult |
un CommandResult contenant le résultat de la commande exécutée. |
runTimedCmd
public CommandResult runTimedCmd (long timeout, String... command)
Méthode d'assistance pour exécuter une commande système et l'annuler si elle prend plus de temps que prévu.
| Paramètres | |
|---|---|
timeout |
long : temps d'attente maximal en ms. 0 signifie aucune limite de temps. |
command |
String : commande système spécifiée et, éventuellement, arguments à exécuter |
| Renvoie | |
|---|---|
CommandResult |
un CommandResult contenant le résultat de la commande exécutée. |
runTimedCmdRetry
public CommandResult runTimedCmdRetry (long timeout, long retryInterval, int attempts, String... command)
Méthode d'assistance pour exécuter une commande système et l'annuler si elle prend plus de temps que prévu.
| Paramètres | |
|---|---|
timeout |
long : durée d'attente maximale en ms pour chaque tentative |
retryInterval |
long : temps d'attente entre les tentatives de commande |
attempts |
int : nombre maximal de tentatives |
command |
String : commande système spécifiée et, éventuellement, arguments à exécuter |
| Renvoie | |
|---|---|
CommandResult |
un CommandResult contenant le résultat de la commande exécutée. |
runTimedCmdRetryWithOutputMonitor
public CommandResult runTimedCmdRetryWithOutputMonitor (long timeout, long idleOutputTimeout, long retryInterval, int attempts, String... command)
Méthode d'assistance pour exécuter une commande système et l'annuler si elle prend plus de temps que prévu. Il surveille également les flux de sortie pour détecter toute activité et interrompt le processus si aucune activité de flux n'est observée pendant une période spécifiée. Si idleOutputTimeout est défini sur zéro, aucune surveillance du flux n'est effectuée.
| Paramètres | |
|---|---|
timeout |
long : durée d'attente maximale en ms pour chaque tentative |
idleOutputTimeout |
long : durée maximale d'attente en ms pour la sortie sur les flux de sortie |
retryInterval |
long : temps d'attente entre les tentatives de commande |
attempts |
int : nombre maximal de tentatives |
command |
String : commande système spécifiée et, éventuellement, arguments à exécuter |
| Renvoie | |
|---|---|
CommandResult |
un CommandResult contenant le résultat de la commande exécutée. |
runTimedCmdSilently
public CommandResult runTimedCmdSilently (long timeout, String... command)
Méthode d'assistance pour exécuter une commande système et l'annuler si elle prend plus de temps que prévu. Semblable à runTimedCmd(long, String), mais ne consigne aucune erreur en cas d'exception.
| Paramètres | |
|---|---|
timeout |
long : temps d'attente maximal en ms |
command |
String : commande système spécifiée et, éventuellement, arguments à exécuter |
| Renvoie | |
|---|---|
CommandResult |
un CommandResult contenant le résultat de la commande exécutée. |
runTimedCmdSilentlyRetry
public CommandResult runTimedCmdSilentlyRetry (long timeout, long retryInterval, int attempts, String... command)
Méthode d'assistance pour exécuter une commande système et l'annuler si elle prend plus de temps que prévu. Semblable à runTimedCmdRetry(long, long, int, String[]), mais ne consigne aucune erreur en cas d'exception.
| Paramètres | |
|---|---|
timeout |
long : temps d'attente maximal en ms |
retryInterval |
long : temps d'attente entre les tentatives de commande |
attempts |
int : nombre maximal de tentatives |
command |
String : commande système spécifiée et, éventuellement, arguments à exécuter |
| Renvoie | |
|---|---|
CommandResult |
un CommandResult contenant le résultat de la commande exécutée. |
runTimedCmdWithInput
public CommandResult runTimedCmdWithInput (long timeout, String input, File stdoutFile, File stderrFile, String... command)
Méthode d'assistance pour exécuter une commande système, l'annuler si elle prend plus de temps que prévu et rediriger la sortie vers des fichiers si spécifié.
| Paramètres | |
|---|---|
timeout |
long : délai maximal d'attente en ms. 0 signifie aucun délai. |
input |
String : entrée stdin à transmettre au processus |
stdoutFile |
File : ERROR(/File) où la sortie standard sera redirigée. Peut être nul. |
stderrFile |
File : ERROR(/File) où la sortie d'erreur sera redirigée. Peut être nul. |
command |
String : commande système spécifiée et, éventuellement, arguments à exécuter |
| Renvoie | |
|---|---|
CommandResult |
un CommandResult contenant le résultat de la commande exécutée. |
runTimedCmdWithInput
public CommandResult runTimedCmdWithInput (long timeout, String input, String... command)
Méthode d'assistance pour exécuter une commande système nécessitant une entrée stdin et l'annuler si elle prend plus de temps que spécifié.
| Paramètres | |
|---|---|
timeout |
long : temps d'attente maximal en ms |
input |
String : entrée stdin à transmettre au processus |
command |
String : commande système spécifiée et, éventuellement, arguments à exécuter |
| Renvoie | |
|---|---|
CommandResult |
un CommandResult contenant le résultat de la commande exécutée. |
runTimedCmdWithInput
public CommandResult runTimedCmdWithInput (long timeout, String input,command)
Méthode d'assistance pour exécuter une commande système nécessitant une entrée stdin et l'annuler si elle prend plus de temps que spécifié.
| Paramètres | |
|---|---|
timeout |
long : temps d'attente maximal en ms |
input |
String : entrée stdin à transmettre au processus |
command |
: ERROR(/List) contenant la commande système et, éventuellement, les arguments à exécuter |
| Renvoie | |
|---|---|
CommandResult |
un CommandResult contenant le résultat de la commande exécutée. |
runTimedCmdWithInputRedirect
public CommandResult runTimedCmdWithInputRedirect (long timeout, File inputRedirect, String... command)
Méthode d'assistance permettant d'exécuter une commande système qui nécessite la redirection de Stdin à partir d'un fichier et l'abandon si elle prend plus de temps qu'une durée spécifiée.
| Paramètres | |
|---|---|
timeout |
long : temps d'attente maximal en ms |
inputRedirect |
File : ERROR(/File) à rediriger en tant qu'entrée standard à l'aide de ProcessBuilder.redirectInput(). Si la valeur est nulle, stdin ne sera pas redirigé. |
command |
String : commande système spécifiée et, éventuellement, arguments à exécuter |
| Renvoie | |
|---|---|
CommandResult |
un CommandResult contenant le résultat de la commande exécutée. |
runTimedCmdWithOutputMonitor
public CommandResult runTimedCmdWithOutputMonitor (long timeout, long idleOutputTimeout, OutputStream stdout, OutputStream stderr, String... command)
Méthode d'assistance pour exécuter une commande système, abandonner si elle prend plus de temps que spécifié et rediriger la sortie vers des fichiers si spécifié. Lorsque les ERROR(/OutputStream) sont fournis de cette manière, ils restent ouverts à la fin de la fonction.
| Paramètres | |
|---|---|
timeout |
long : délai maximal d'attente en ms. 0 signifie aucun délai. |
idleOutputTimeout |
long : durée maximale d'attente en ms pour la sortie sur les flux de sortie |
stdout |
OutputStream : ERROR(/OutputStream) où la sortie standard sera redirigée. Peut être nul. |
stderr |
OutputStream : ERROR(/OutputStream) où la sortie d'erreur sera redirigée. Peut être nul. |
command |
String : commande système spécifiée et, éventuellement, arguments à exécuter |
| Renvoie | |
|---|---|
CommandResult |
un CommandResult contenant le résultat de la commande exécutée. |
runTimedCmdWithOutputMonitor
public CommandResult runTimedCmdWithOutputMonitor (long timeout, long idleOutputTimeout, String... command)
Méthode d'assistance pour exécuter une commande système et l'annuler si elle prend plus de temps que prévu. Il surveille également les flux de sortie pour détecter toute activité et interrompt le processus si aucune activité de flux n'est observée pendant une période spécifiée. Si idleOutputTimeout est défini sur zéro, aucune surveillance du flux n'est effectuée.
| Paramètres | |
|---|---|
timeout |
long : temps d'attente maximal en ms. 0 signifie aucune limite de temps. |
idleOutputTimeout |
long : durée maximale d'attente en ms pour la sortie sur les flux de sortie |
command |
String : commande système spécifiée et, éventuellement, arguments à exécuter |
| Renvoie | |
|---|---|
CommandResult |
un CommandResult contenant le résultat de la commande exécutée. |
runTimedRetry
public boolean runTimedRetry (long opTimeout,
long pollInterval,
int attempts,
IRunUtil.IRunnableResult runnable)Bloque et exécute une opération plusieurs fois jusqu'à ce qu'elle aboutisse.
| Paramètres | |
|---|---|
opTimeout |
long : durée d'attente maximale en ms pour une tentative d'opération |
pollInterval |
long : temps d'attente entre les tentatives de commande |
attempts |
int : nombre maximal de tentatives |
runnable |
IRunUtil.IRunnableResult : IRunUtil.IRunnableResult à exécuter |
| Renvoie | |
|---|---|
boolean |
true si l'opération a abouti avant que le nombre de tentatives ne soit atteint. |
runTimedRetryWithOutputMonitor
public boolean runTimedRetryWithOutputMonitor (long opTimeout,
long idleOutputTimeout,
long pollInterval,
int attempts,
IRunUtil.IRunnableResult runnable)Bloque et exécute une opération plusieurs fois jusqu'à ce qu'elle aboutisse. Il surveille également l'activité des flux de sortie et l'annule si aucune activité de flux n'est observée pendant une durée spécifiée. Si idleOutputTimeout est défini sur zéro, aucune surveillance du flux n'est effectuée.
| Paramètres | |
|---|---|
opTimeout |
long : durée d'attente maximale en ms pour une tentative d'opération |
idleOutputTimeout |
long : durée maximale d'attente en ms pour la sortie sur les flux de sortie |
pollInterval |
long : temps d'attente entre les tentatives de commande |
attempts |
int : nombre maximal de tentatives |
runnable |
IRunUtil.IRunnableResult : IRunUtil.IRunnableResult à exécuter |
| Renvoie | |
|---|---|
boolean |
true si l'opération a abouti avant que le nombre de tentatives ne soit atteint. |
runTimedWithOutputMonitor
public CommandStatus runTimedWithOutputMonitor (long timeout, long idleOutputTimeout, IRunUtil.IRunnableResult runnable, boolean logErrors)
Bloque et exécute une opération, en l'annulant si elle prend plus de temps que prévu. Il surveille également les flux de sortie pour détecter toute activité et interrompt le processus si aucune activité de flux n'est observée pendant une période spécifiée. Si idleOutputTimeout est défini sur zéro, aucune surveillance du flux n'est effectuée.
| Paramètres | |
|---|---|
timeout |
long : temps d'attente maximal en ms |
idleOutputTimeout |
long : durée maximale d'attente en ms pour la sortie sur les flux de sortie |
runnable |
IRunUtil.IRunnableResult : IRunUtil.IRunnableResult à exécuter |
logErrors |
boolean : indique si les erreurs doivent être consignées en cas d'exception. |
| Renvoie | |
|---|---|
CommandStatus |
le résultat CommandStatus de l'opération. |
setEnvVariable
public void setEnvVariable (String name,
String value)Définit une variable d'environnement à utiliser lors de l'exécution des commandes système.
| Paramètres | |
|---|---|
name |
String : nom de la variable |
value |
String : valeur de la variable |
setEnvVariablePriority
public void setEnvVariablePriority (IRunUtil.EnvPriority priority)
Décidez si, lors de la création d'un processus, la suppression des variables d'environnement est plus prioritaire que leur définition.
Par défaut, la suppression d'une variable est prioritaire. Cela signifie que si vous essayez de définir une variable portant le même nom, cela ne fonctionnera pas, car la variable sera supprimée.
Ne peut pas être utilisé sur l'instance IRunUtil par défaut.
| Paramètres | |
|---|---|
priority |
IRunUtil.EnvPriority |
setInterruptibleInFuture
public void setInterruptibleInFuture (Thread thread,
long timeMs)Définissez-le comme interruptible après un certain temps d'attente.
ERROR(/CommandScheduler#shutdownHard()) pour nous assurer que nous finissons par arrêter le processus.
| Paramètres | |
|---|---|
thread |
Thread : thread qui deviendra interruptible. |
timeMs |
long : délai d'attente avant de définir l'état sur "interruptible". |
setLinuxInterruptProcess
public void setLinuxInterruptProcess (boolean interrupt)
Permet d'utiliser l'interruption "kill" de Linux sur les processus exécutés via les méthodes #runTimed lorsqu'ils atteignent un délai d'expiration.
Ne peut pas être utilisé sur l'instance IRunUtil par défaut.
| Paramètres | |
|---|---|
interrupt |
boolean |
setRedirectStderrToStdout
public void setRedirectStderrToStdout (boolean redirect)
Définissez le flux d'erreur standard pour qu'il soit redirigé vers le flux de sortie standard lors de l'exécution des commandes système. La valeur initiale est "false".
| Paramètres | |
|---|---|
redirect |
boolean : nouvelle valeur indiquant s'il faut rediriger ou non |
setWorkingDir
public void setWorkingDir (File dir)
Définit le répertoire de travail pour les commandes système.
| Paramètres | |
|---|---|
dir |
File : répertoire de travail |
sommeil
public void sleep (long time)
Méthode d'assistance pour mettre en veille pendant une durée donnée, en ignorant les exceptions.
| Paramètres | |
|---|---|
time |
long : nombre de millisecondes de veille. Les valeurs inférieures ou égales à 0 seront ignorées. |
unsetEnvVariable
public void unsetEnvVariable (String key)
Annule la définition d'une variable d'environnement afin que les commandes système s'exécutent sans cette variable.
Les variables d'environnement peuvent hériter du processus parent. Nous devons donc supprimer la variable d'environnement de ProcessBuilder.environment().
| Paramètres | |
|---|---|
key |
String : nom de la variable |
Voir aussi :