執行工具

public class RunUtil
extends Object implements IRunUtil

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


一系列執行作業的輔助方法。

摘要

欄位

public static final String INHERITIO_PREFIX

public static final String RUNNABLE_NOTIFIER_NAME

公用建構函式

RunUtil()

建立要使用的新 RunUtil 物件。

RunUtil(boolean inheritEnvVars)

公用方法

void allowInterrupt(boolean allow)

允許/禁止在目前執行緒上執行中斷。

static IRunUtil getDefault()

取得預設 RunUtil 物件的參照。

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

中斷指定執行緒進行中/即將執行的執行作業。

void interrupt(Thread thread, String message)

中斷指定執行緒進行中/即將執行的執行作業。

boolean isInterruptAllowed()

指定 RunUtil 的中斷狀態。

static void linkFile(File destRoot, String relToRoot, File target)

target 連結至 destRoot 底下的地點。

Process runCmdInBackground(Redirect redirect, command)

接受指令引數的 runCmdInBackground(String) 替代方法 。ERROR(/List)

Process runCmdInBackground( command)

接受指令引數的 runCmdInBackground(String) 替代方法 。ERROR(/List)

Process runCmdInBackground( command, OutputStream output)

使用 ERROR(/OutputStream) 執行指令,記錄指令輸出內容。

Process runCmdInBackground(String... command)

以非同步方式執行系統指令的輔助方法。

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

以非同步方式執行系統指令的輔助方法。

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

多次封鎖並執行一項作業,直到成功為止。

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

多次封鎖並執行一項作業,直到成功為止。

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

多次封鎖並執行一項作業,直到成功為止。

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

封鎖並執行作業,如果作業時間超過指定時間,就會取消作業。

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

執行系統指令的輔助方法,如果執行時間超過指定時間,就會取消 並將輸出內容重新導向至檔案

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

輔助方法執行系統指令,並在所需時間超過指定時間時取消 讓應用程式從可以最快做出回應的位置 回應使用者要求

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

輔助方法執行系統指令,並在所需時間超過指定時間時取消 讓應用程式從可以最快做出回應的位置 回應使用者要求

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

輔助方法執行系統指令,並在所需時間超過指定時間時取消 讓應用程式從可以最快做出回應的位置 回應使用者要求

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

輔助方法執行系統指令,並在所需時間超過指定時間時取消 讓應用程式從可以最快做出回應的位置 回應使用者要求

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

輔助方法執行系統指令,並在所需時間超過指定時間時取消 讓應用程式從可以最快做出回應的位置 回應使用者要求

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

執行系統指令的輔助方法,如果執行時間超過指定時間,就會取消 並將輸出內容重新導向至檔案

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

輔助方法可執行需要 stdin 輸入的系統指令,並在指令中取消 需要超過指定時間的時間

CommandResult runTimedCmdWithInput(long timeout, String input, command)

輔助方法可執行需要 stdin 輸入的系統指令,並在指令中取消 需要超過指定時間的時間

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

使用輔助方法執行需要從檔案重新導向 Stdin 的系統指令;以及 在所需時間超過指定時間時取消作業。

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

執行系統指令的輔助方法,如果執行時間超過指定時間,就會取消 並將輸出內容重新導向至檔案

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

輔助方法執行系統指令,並在所需時間超過指定時間時取消 讓應用程式從可以最快做出回應的位置 回應使用者要求

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

透過快取執行系統指令的輔助方法。

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

多次封鎖並執行一項作業,直到成功為止。

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

多次封鎖並執行一項作業,直到成功為止。

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

封鎖並執行作業,如果作業時間超過指定時間,就會取消作業。

void setEnvVariable(String name, String value)

設定執行系統指令時要使用的環境變數。

void setEnvVariablePriority(IRunUtil.EnvPriority priority)

決定是否建立程序時,取消設定環境變數的優先順序較高 而不是設定優先順序

void setInterruptibleInFuture(Thread thread, long timeMs)

請設為稍候片刻再設為可中斷。

void setLinuxInterruptProcess(boolean interrupt)

允許使用 Linux「kill」在 #runTimed 方法執行時中斷 進入逾時狀態。

void setRedirectStderrToStdout(boolean redirect)

設定標準錯誤串流,在執行系統時重新導向至標準輸出串流 指令

void setWorkingDir(File dir)

設定系統指令的工作目錄。

void sleep(long time)

輔助方法:在指定時間休眠,忽略任何例外狀況。

static String toRelative(File start, String target)
void unsetEnvVariable(String key)

取消設定環境變數,如此一來,系統指令就會在沒有這個環境變數的情況下執行。 環境變數可能會沿用父項程序,因此我們需要刪除 ProcessBuilder.environment() 中的環境變數

欄位

INHERITIO_PREFIX

public static final String INHERITIO_PREFIX

RUNNABLE_NOTIFIER_NAME

public static final String RUNNABLE_NOTIFIER_NAME

公用建構函式

執行工具

public RunUtil ()

建立要使用的新 RunUtil 物件。

執行工具

public RunUtil (boolean inheritEnvVars)

參數
inheritEnvVars boolean

公用方法

允許中斷

public void allowInterrupt (boolean allow)

允許/禁止在目前執行緒上執行中斷。如果被允許,請執行 目前的執行緒可以透過 interrupt(Thread, String) 方法中斷其他執行緒。

參數
allow boolean:是否允許目前執行緒上的執行作業中斷。

getDefault

public static IRunUtil getDefault ()

取得預設 RunUtil 物件的參照。

這對於想要在不自訂的情況下使用 IRunUtil 的呼叫端非常有幫助。 建議需要自訂 IRunUtil 執行個體的呼叫端 (也就是必須呼叫 setEnvVariable(String, String)setWorkingDir(File) 建立自己的副本。

傳回
IRunUtil

中斷

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

中斷指定執行緒進行中/即將執行的執行作業。要在 指定的執行緒會擲回 RunInterruptedException

參數
message StringRunInterruptedException 的訊息。

errorId ErrorIdentifier:代表中斷原因 (如果已知)。

中斷

public void interrupt (Thread thread, 
                String message)

中斷指定執行緒進行中/即將執行的執行作業。要在 指定的執行緒會擲回 RunInterruptedException

參數
message StringRunInterruptedException 的訊息。

isInterruptAllowed 是否允許

public boolean isInterruptAllowed ()

指定 RunUtil 的中斷狀態。

傳回
boolean 如果執行可以中斷,傳回 true,否則傳回 false。

連結檔案

public static void linkFile (File destRoot, 
                String relToRoot, 
                File target)

target 連結至 destRoot 底下的地點。

如果目標檔案或符號連結已存在於 destRoot 底下,則檔案 不會連結。

參數
destRoot File:目的地的根。

relToRoot String:從目的地目錄到根的相對路徑。

target File:要連結的目標檔案。

擲回
無法連結目標檔案。

runCmdInBackground

public Process runCmdInBackground (Redirect redirect, 
                 command)

接受指令引數的 runCmdInBackground(String) 替代方法 。ERROR(/List)

參數
redirect Redirect:要套用至 ProcessBuilderERROR(/Redirect)

command :包含指定系統指令和選用引數的 ERROR(/List) 至 exec

傳回
Process 已執行指令的 Process

runCmdInBackground

public Process runCmdInBackground ( command)

接受指令引數的 runCmdInBackground(String) 替代方法 。ERROR(/List)

參數
command :包含指定系統指令和選用引數的 ERROR(/List) 至 exec

傳回
Process 已執行指令的 Process

runCmdInBackground

public Process runCmdInBackground ( command, 
                OutputStream output)

使用 ERROR(/OutputStream) 執行指令,記錄指令輸出內容。 Stdout 和 stderr 會合併在一起。

參數
command :要執行的指令

output OutputStream:用於儲存輸出內容的 OutputStream

傳回
Process 執行指令的 Process

runCmdInBackground

public Process runCmdInBackground (String... command)

以非同步方式執行系統指令的輔助方法。

會在啟動指令後立即傳回。

參數
command String:指定的系統指令和 exec 的選用引數

傳回
Process 已執行指令的 Process

runCmdInBackground

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

以非同步方式執行系統指令的輔助方法。

會在啟動指令後立即傳回。

參數
redirect Redirect:要套用至 ProcessBuilderERROR(/Redirect)

command String:指定的系統指令和 exec 的選用引數

傳回
Process 已執行指令的 Process

runEscalatingTimed 重試

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

多次封鎖並執行一項作業,直到成功為止。

每次嘗試執行作業之間的等待時間會指數增加。本設計為專供 為了讓系統有時間進行復原等作業 暫時無法使用。

參數
opTimeout long:單一作業嘗試的等待時間上限 (毫秒)

initialPollInterval long:嘗試執行兩次作業時,等待的初始時間

maxPollInterval long:嘗試作業之間等待的時間上限

maxTime long:嘗試執行作業的總時間約略值

runnable IRunUtil.IRunnableResult:要執行的 IRunUtil.IRunnableResult

傳回
boolean 如果作業在 maxTime 到期前成功完成,則為 true

runFixedTimed 重試

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

多次封鎖並執行一項作業,直到成功為止。

參數
opTimeout long:單一作業嘗試的等待時間上限 (毫秒)

pollInterval long:嘗試執行兩次作業時,等待的初始時間

maxTime long:嘗試執行作業的總時間約略值

runnable IRunUtil.IRunnableResult:要執行的 IRunUtil.IRunnableResult

傳回
boolean 如果作業在 maxTime 到期前成功完成,則為 true

runFixedTimed 重試 WithOutputMonitor

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

多次封鎖並執行一項作業,直到成功為止。也會監控 活動的輸出串流,如果在指定時間未觀察到串流活動時取消,則取消。 如果閒置輸出逾時設為零,就不會發生串流監控事件。

參數
opTimeout long:單一作業嘗試的等待時間上限 (毫秒)

idleOutputTimeout long:輸出串流的輸出內容最長 (以毫秒為單位)

pollInterval long:嘗試執行兩次作業時,等待的初始時間

maxTime long:嘗試執行作業的總時間約略值

runnable IRunUtil.IRunnableResult:要執行的 IRunUtil.IRunnableResult

傳回
boolean 如果作業在 maxTime 到期前成功完成,則為 true

執行時間

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

封鎖並執行作業,如果作業時間超過指定時間,就會取消作業。

參數
timeout long:等待時間上限 (毫秒)

runnable IRunUtil.IRunnableResult:要執行的 IRunUtil.IRunnableResult

logErrors boolean:在例外狀況上記錄錯誤。

傳回
CommandStatus CommandStatus 作業的結果。

runTimedCmd

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

執行系統指令的輔助方法,如果執行時間超過指定時間,就會取消 並將輸出內容重新導向至檔案透過這種方式提供 ERROR(/OutputStream) 時 這些函式會在函式結束時保持開啟

參數
timeout long:等待時間上限,以毫秒為單位。0 表示沒有逾時。

stdout OutputStream:要重新導向 std 輸出內容的 ERROR(/OutputStream)。可以是空值。

stderr OutputStreamERROR(/OutputStream),其中會重新導向錯誤輸出內容。可以是空值。

command String:指定的系統指令和 exec 的選用引數

傳回
CommandResult 含有執行指令執行結果的 CommandResult

runTimedCmd

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

輔助方法執行系統指令,並在所需時間超過指定時間時取消 讓應用程式從可以最快做出回應的位置 回應使用者要求

參數
timeout long:等待時間上限,以毫秒為單位。0 表示沒有逾時。

command String:指定的系統指令和 exec 的選用引數

傳回
CommandResult 含有執行指令執行結果的 CommandResult

runTimedCmd 重試

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

輔助方法執行系統指令,並在所需時間超過指定時間時取消 讓應用程式從可以最快做出回應的位置 回應使用者要求

參數
timeout long:每次嘗試時等待的時間上限 (毫秒)

retryInterval long:每次重試指令前的等待時間

attempts int:嘗試次數上限

command String:指定的系統指令和 exec 的選用引數

傳回
CommandResult 含有執行指令執行結果的 CommandResult

runTimedCmd 重試 WithOutputMonitor

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

輔助方法執行系統指令,並在所需時間超過指定時間時取消 讓應用程式從可以最快做出回應的位置 回應使用者要求同時監控活動的輸出串流,如果沒有串流活動,則取消 特定時間的觀察。如果閒置輸出逾時設為零,就不會監控串流 會發生這種事。

參數
timeout long:每次嘗試時等待的時間上限 (毫秒)

idleOutputTimeout long:輸出串流的輸出內容最長 (以毫秒為單位)

retryInterval long:每次重試指令前的等待時間

attempts int:嘗試次數上限

command String:指定的系統指令和 exec 的選用引數

傳回
CommandResult 含有執行指令執行結果的 CommandResult

runTimedCmdSilently

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

輔助方法執行系統指令,並在所需時間超過指定時間時取消 讓應用程式從可以最快做出回應的位置 回應使用者要求與 runTimedCmd(long, String) 類似,但不會記錄以下項目的任何錯誤: 例外狀況。

參數
timeout long:等待時間上限 (毫秒)

command String:指定的系統指令和 exec 的選用引數

傳回
CommandResult 含有執行指令執行結果的 CommandResult

runTimedCmdSilently 重試

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

輔助方法執行系統指令,並在所需時間超過指定時間時取消 讓應用程式從可以最快做出回應的位置 回應使用者要求和「runTimedCmdRetry(long, long, int, String[])」類似, 但不會記錄例外狀況上的任何錯誤。

參數
timeout long:等待時間上限 (毫秒)

retryInterval long:每次重試指令前的等待時間

attempts int:嘗試次數上限

command String:指定的系統指令和 exec 的選用引數

傳回
CommandResult 含有執行指令執行結果的 CommandResult

runTimedCmdWithInput

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

執行系統指令的輔助方法,如果執行時間超過指定時間,就會取消 並將輸出內容重新導向至檔案

參數
timeout long:等待時間上限,以毫秒為單位。0 表示沒有逾時。

input String:要傳遞給處理的 stdin 輸入內容

stdoutFile File:要重新導向 std 輸出內容的 ERROR(/File)。可以是空值。

stderrFile FileERROR(/File),其中會重新導向錯誤輸出內容。可以是空值。

command String:指定的系統指令和 exec 的選用引數

傳回
CommandResult 含有執行指令執行結果的 CommandResult

runTimedCmdWithInput

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

輔助方法可執行需要 stdin 輸入的系統指令,並在指令中取消 需要超過指定時間的時間

參數
timeout long:等待時間上限 (毫秒)

input String:要傳遞給處理的 stdin 輸入內容

command String:指定的系統指令和 exec 的選用引數

傳回
CommandResult 含有執行指令執行結果的 CommandResult

runTimedCmdWithInput

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

輔助方法可執行需要 stdin 輸入的系統指令,並在指令中取消 需要超過指定時間的時間

參數
timeout long:等待時間上限 (毫秒)

input String:要傳遞給處理的 stdin 輸入內容

command ERROR(/List),包含系統指令和 exec 的選用引數

傳回
CommandResult 含有執行指令執行結果的 CommandResult

runTimedCmdWithInputRedirect

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

使用輔助方法執行需要從檔案重新導向 Stdin 的系統指令;以及 在所需時間超過指定時間時取消作業。

參數
timeout long:等待時間上限 (毫秒)

inputRedirect File:使用 ProcessBuilder.redirectInput() 重新導向至標準輸入的 ERROR(/File)。如果值為空值,系統不會重新導向 stdin。

command String:指定的系統指令和 exec 的選用引數

傳回
CommandResult 含有執行指令執行結果的 CommandResult

runTimedCmdWithOutputMonitor

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

執行系統指令的輔助方法,如果執行時間超過指定時間,就會取消 並將輸出內容重新導向至檔案透過這種方式提供 ERROR(/OutputStream) 時 這些函式會在函式結束時保持開啟

參數
timeout long:等待時間上限,以毫秒為單位。0 表示沒有逾時。

idleOutputTimeout long:輸出串流的輸出內容最長 (以毫秒為單位)

stdout OutputStream:要重新導向 std 輸出內容的 ERROR(/OutputStream)。可以是空值。

stderr OutputStreamERROR(/OutputStream),其中會重新導向錯誤輸出內容。可以是空值。

command String:指定的系統指令和 exec 的選用引數

傳回
CommandResult 含有執行指令執行結果的 CommandResult

runTimedCmdWithOutputMonitor

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

輔助方法執行系統指令,並在所需時間超過指定時間時取消 讓應用程式從可以最快做出回應的位置 回應使用者要求同時監控活動的輸出串流,如果沒有串流活動,則取消 特定時間的觀察。如果閒置輸出逾時設為零,就不會監控串流 會發生這種事。

參數
timeout long:等待時間上限,以毫秒為單位。0 表示沒有逾時。

idleOutputTimeout long:輸出串流的輸出內容最長 (以毫秒為單位)

command String:指定的系統指令和 exec 的選用引數

傳回
CommandResult 含有執行指令執行結果的 CommandResult

runTimedCmdWithOutputMonitor

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

透過快取執行系統指令的輔助方法。

如果指定 cacheClient,系統就會啟用快取。如果快取 快取結果將會傳回快取結果否則runTimedCmdWithOutputMonitor(long, long, OutputStream, OutputStream, String) 用於執行指令,並將結果上傳以供快取。

參數
timeout long:等待時間上限,以毫秒為單位。0 表示沒有逾時。

idleOutputTimeout long:輸出串流的輸出內容最長 (以毫秒為單位)。

stdout OutputStream:要重新導向 std 輸出內容的 ERROR(/OutputStream)。可以是空值。

stderr OutputStreamERROR(/OutputStream),其中會重新導向錯誤輸出內容。可以是空值。

cacheClient ICacheClient:用於處理快取的 ICacheClient 例項。

command String:指定的系統指令和 exec 的選用引數。

傳回
CommandResult 含有指令執行結果的 CommandResult

runTimed 重試

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

多次封鎖並執行一項作業,直到成功為止。

參數
opTimeout long:嘗試一次作業後等待的時間上限 (毫秒)

pollInterval long:每次重試指令前的等待時間

attempts int:嘗試次數上限

runnable IRunUtil.IRunnableResult:要執行的 IRunUtil.IRunnableResult

傳回
boolean 如果作業在嘗試前已順利完成,則為 true

runTimed 重試 WithOutputMonitor

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

多次封鎖並執行一項作業,直到成功為止。也會監控 活動的輸出串流,如果在指定時間未觀察到串流活動時取消,則取消。 如果閒置輸出逾時設為零,就不會發生串流監控事件。

參數
opTimeout long:嘗試一次作業後等待的時間上限 (毫秒)

idleOutputTimeout long:輸出串流的輸出內容最長 (以毫秒為單位)

pollInterval long:每次重試指令前的等待時間

attempts int:嘗試次數上限

runnable IRunUtil.IRunnableResult:要執行的 IRunUtil.IRunnableResult

傳回
boolean 如果作業在嘗試前已順利完成,則為 true

runTimedWithOutputMonitor

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

封鎖並執行作業,如果作業時間超過指定時間,就會取消作業。其他 監控活動的輸出串流,在沒有觀察到串流活動的情況下取消 指定時間。如果閒置輸出逾時設為零,就不會發生串流監控事件。

參數
timeout long:等待時間上限 (毫秒)

idleOutputTimeout long:輸出串流的輸出內容最長 (以毫秒為單位)

runnable IRunUtil.IRunnableResult:要執行的 IRunUtil.IRunnableResult

logErrors boolean:在例外狀況上記錄錯誤。

傳回
CommandStatus CommandStatus 作業的結果。

setEnvVariable

public void setEnvVariable (String name, 
                String value)

設定執行系統指令時要使用的環境變數。

參數
name String:變數名稱

value String:變數值

setEnvVariablePriority

public void setEnvVariablePriority (IRunUtil.EnvPriority priority)

決定是否建立程序時,取消設定環境變數的優先順序較高 而不是設定優先順序 根據預設,取消設定的優先順序較高,亦即如果嘗試以 由於系統會取消設定變數,因此不會設定該變數的名稱。 無法用於預設 IRunUtil 執行個體,

參數
priority IRunUtil.EnvPriority

setInterruptibleInFuture

public void setInterruptibleInFuture (Thread thread, 
                long timeMs)

請設為稍候片刻再設為可中斷。 ERROR(/CommandScheduler#shutdownHard())

參數
thread Thread:要中斷的執行緒。

timeMs long:設定中斷前的等待時間。

setLinuxInterruptProcess

public void setLinuxInterruptProcess (boolean interrupt)

允許使用 Linux「kill」在 #runTimed 方法執行時中斷 進入逾時狀態。 無法用於預設 IRunUtil 執行個體,

參數
interrupt boolean

setRedirectStderrToStdout

public void setRedirectStderrToStdout (boolean redirect)

設定標準錯誤串流,在執行系統時重新導向至標準輸出串流 指令初始值為 false。

參數
redirect boolean:是否要重新導向的新值

setWorkingDir

public void setWorkingDir (File dir)

設定系統指令的工作目錄。

參數
dir File:工作目錄

舒眠

public void sleep (long time)

輔助方法:在指定時間休眠,忽略任何例外狀況。

參數
time long:要睡覺 毫秒。小於或等於 0 的值將被忽略

相對

public static String toRelative (File start, 
                String target)

參數
start File

target String

傳回
String

未設定這項政策

public void unsetEnvVariable (String key)

取消設定環境變數,如此一來,系統指令就會在沒有這個環境變數的情況下執行。 環境變數可能會沿用父項程序,因此我們需要刪除 ProcessBuilder.environment() 中的環境變數

參數
key String:變數名稱