RunUtil
public
class
RunUtil
extends Object
implements
IRunUtil
| java.lang.Object | |
| ↳ | com.android.tradefed.util.RunUtil |
ชุดวิธีการช่วยสำหรับการดำเนินการ
สรุป
ค่าคงที่ | |
|---|---|
String |
INHERITIO_PREFIX
|
String |
RUNNABLE_NOTIFIER_NAME
|
เครื่องมือสร้างสาธารณะ | |
|---|---|
RunUtil()
สร้างออบเจ็กต์ |
|
RunUtil(boolean inheritEnvVars)
|
|
เมธอดสาธารณะ | |
|---|---|
void
|
allowInterrupt(boolean allow)
อนุญาต/ไม่อนุญาตให้มีการหยุดการเรียกใช้ในเธรดปัจจุบัน |
ProcessBuilder
|
createProcessBuilder(Redirect redirect,
|
static
IRunUtil
|
getDefault()
รับการอ้างอิงถึงออบเจ็กต์ |
void
|
interrupt(Thread thread, String message, ErrorIdentifier errorId)
ขัดจังหวะการดำเนินการเรียกใช้ที่กำลังดำเนินอยู่/กำลังจะเกิดขึ้นในเธรดที่ระบุ |
void
|
interrupt(Thread thread, String message)
ขัดจังหวะการดำเนินการเรียกใช้ที่กำลังดำเนินอยู่/กำลังจะเกิดขึ้นในเธรดที่ระบุ |
boolean
|
isInterruptAllowed()
ระบุสถานะการขัดจังหวะของ RunUtil |
Process
|
runCmdInBackground(Redirect redirect,
เมธอด |
Process
|
runCmdInBackground(
เมธอด |
Process
|
runCmdInBackground(
การเรียกใช้คำสั่งด้วย |
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)
เมธอด Helper เพื่อเรียกใช้คำสั่งของระบบ และยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ |
CommandResult
|
runTimedCmdRetryWithOutputMonitor(long timeout, long idleOutputTimeout, long retryInterval, int attempts, String... command)
เมธอด Helper เพื่อเรียกใช้คำสั่งของระบบ และยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ |
CommandResult
|
runTimedCmdSilently(long timeout, String... command)
เมธอด Helper เพื่อเรียกใช้คำสั่งของระบบ และยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ |
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,
เมธอดช่วยในการเรียกใช้คำสั่งของระบบที่ต้องมีอินพุต stdin และยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ |
CommandResult
|
runTimedCmdWithInputRedirect(long timeout, File inputRedirect, String... command)
เมธอด Helper สำหรับเรียกใช้คำสั่งของระบบที่ต้องเปลี่ยนเส้นทาง Stdin จากไฟล์ และ ยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ |
CommandResult
|
runTimedCmdWithOutputMonitor(long timeout, long idleOutputTimeout, OutputStream stdout, OutputStream stderr, String... command)
เมธอดช่วยในการเรียกใช้คำสั่งของระบบ ยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ และเปลี่ยนเส้นทางเอาต์พุตไปยังไฟล์หากระบุไว้ |
CommandResult
|
runTimedCmdWithOutputMonitor(long timeout, long idleOutputTimeout, 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)
อนุญาตให้ใช้การหยุดชะงัก "kill" ของ Linux ในกระบวนการที่ทำงานผ่านเมธอด #runTimed เมื่อถึงการหมดเวลา |
void
|
setRedirectStderrToStdout(boolean redirect)
ตั้งค่าสตรีมข้อผิดพลาดมาตรฐานให้เปลี่ยนเส้นทางไปยังสตรีมเอาต์พุตมาตรฐานเมื่อเรียกใช้คำสั่งของระบบ |
void
|
setWorkingDir(File dir)
ตั้งค่าไดเรกทอรีการทำงานสำหรับคำสั่งของระบบ |
void
|
sleep(long time)
เมธอดตัวช่วยในการหยุดทำงานตามระยะเวลาที่กำหนดโดยไม่สนใจข้อยกเว้น |
void
|
unsetEnvVariable(String key)
ยกเลิกการตั้งค่าตัวแปรสภาพแวดล้อมเพื่อให้คำสั่งของระบบทำงานได้โดยไม่มีตัวแปรสภาพแวดล้อมนี้
ตัวแปรสภาพแวดล้อมอาจรับค่ามาจากกระบวนการระดับบนสุด ดังนั้นเราจึงต้องลบ
ตัวแปรสภาพแวดล้อมออกจาก |
ค่าคงที่
INHERITIO_PREFIX
public static final String INHERITIO_PREFIX
ค่าคงที่: "inheritio-"
RUNNABLE_NOTIFIER_NAME
public static final String RUNNABLE_NOTIFIER_NAME
ค่าคงที่: "RunnableNotifier"
เครื่องมือสร้างสาธารณะ
RunUtil
public RunUtil (boolean inheritEnvVars)
| พารามิเตอร์ | |
|---|---|
inheritEnvVars |
boolean |
เมธอดสาธารณะ
allowInterrupt
public void allowInterrupt (boolean allow)
อนุญาต/ไม่อนุญาตให้มีการหยุดการเรียกใช้ในเธรดปัจจุบัน หากได้รับอนุญาต เทรดปัจจุบันจะถูกขัดจังหวะการทำงานจากเทรดอื่นผ่านเมธอด interrupt(Thread, String) ได้
| พารามิเตอร์ | |
|---|---|
allow |
boolean: whether to allow run interrupts on the current thread. |
createProcessBuilder
public ProcessBuilder createProcessBuilder (Redirect redirect,
commandList,
boolean enableCache) | พารามิเตอร์ | |
|---|---|
redirect |
Redirect |
commandList |
|
enableCache |
boolean |
| คิกรีเทิร์น | |
|---|---|
ProcessBuilder |
|
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 |
String: ข้อความสำหรับ RunInterruptedException |
errorId |
ErrorIdentifier: ระบุสาเหตุของการหยุดชะงักเมื่อทราบ |
ขัดจังหวะ
public void interrupt (Thread thread,
String message)ขัดจังหวะการดำเนินการเรียกใช้ที่กำลังดำเนินอยู่/กำลังจะเกิดขึ้นในเธรดที่ระบุ การดำเนินการรันใน
เธรดที่ระบุจะทำให้เกิด RunInterruptedException
| พารามิเตอร์ | |
|---|---|
message |
String: ข้อความสำหรับ RunInterruptedException |
isInterruptAllowed
public boolean isInterruptAllowed ()
ระบุสถานะการขัดจังหวะของ RunUtil
| คิกรีเทิร์น | |
|---|---|
boolean |
จริงหากหยุดการเรียกใช้ได้ มิเช่นนั้นจะเป็นเท็จ |
runCmdInBackground
public Process runCmdInBackground (Redirect redirect,
command) เมธอด runCmdInBackground(String) สำรองที่ยอมรับอาร์กิวเมนต์คำสั่ง
ในรูปแบบ ERROR(/List)
| พารามิเตอร์ | |
|---|---|
redirect |
Redirect: ERROR(/Redirect) ที่จะใช้กับ ProcessBuilder |
command |
: ERROR(/List) ที่มีคำสั่งของระบบที่ระบุและอาร์กิวเมนต์ (ไม่บังคับ)
เพื่อดำเนินการ |
| คิกรีเทิร์น | |
|---|---|
Process |
Process ของคำสั่งที่ดำเนินการ |
runCmdInBackground
public Process runCmdInBackground (command)
เมธอด runCmdInBackground(String) สำรองที่ยอมรับอาร์กิวเมนต์คำสั่ง
ในรูปแบบ ERROR(/List)
| พารามิเตอร์ | |
|---|---|
command |
: ERROR(/List) ที่มีคำสั่งของระบบที่ระบุและอาร์กิวเมนต์ (ไม่บังคับ)
เพื่อดำเนินการ |
| คิกรีเทิร์น | |
|---|---|
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: ERROR(/Redirect) ที่จะใช้กับ ProcessBuilder |
command |
String: คำสั่งของระบบที่ระบุและอาร์กิวเมนต์ที่จะส่งไปยัง exec (ไม่บังคับ) |
| คิกรีเทิร์น | |
|---|---|
Process |
Process ของคำสั่งที่ดำเนินการ |
runEscalatingTimedRetry
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 |
true หากการดำเนินการเสร็จสมบูรณ์ก่อนที่ maxTime จะหมดอายุ |
runFixedTimedRetry
public boolean runFixedTimedRetry (long opTimeout,
long pollInterval,
long maxTime,
IRunUtil.IRunnableResult runnable)บล็อกและดำเนินการหลายครั้งจนกว่าจะสำเร็จ
| พารามิเตอร์ | |
|---|---|
opTimeout |
long: เวลาสูงสุดที่จะรอเป็นมิลลิวินาทีสำหรับการพยายามดำเนินการครั้งเดียว |
pollInterval |
long: เวลาเริ่มต้นที่ต้องรอระหว่างการพยายามดำเนินการ |
maxTime |
long: เวลาสูงสุดโดยประมาณทั้งหมดที่จะลองดำเนินการต่อ |
runnable |
IRunUtil.IRunnableResult: IRunUtil.IRunnableResult เพื่อดำเนินการ |
| คิกรีเทิร์น | |
|---|---|
boolean |
true หากการดำเนินการเสร็จสมบูรณ์ก่อนที่ maxTime จะหมดอายุ |
runFixedTimedRetryWithOutputMonitor
public boolean runFixedTimedRetryWithOutputMonitor (long opTimeout,
long idleOutputTimeout,
long pollInterval,
long maxTime,
IRunUtil.IRunnableResult runnable)บล็อกและดำเนินการหลายครั้งจนกว่าจะสำเร็จ นอกจากนี้ ยังตรวจสอบสตรีมเอาต์พุตเพื่อหากิจกรรม และยกเลิกหากไม่พบกิจกรรมสตรีมในช่วงเวลาที่กำหนด หากตั้งค่า idleOutputTimeout เป็น 0 จะไม่มีการตรวจสอบสตรีม
| พารามิเตอร์ | |
|---|---|
opTimeout |
long: เวลาสูงสุดที่จะรอเป็นมิลลิวินาทีสำหรับการพยายามดำเนินการครั้งเดียว |
idleOutputTimeout |
long: เวลาสูงสุดที่จะรอในหน่วยมิลลิวินาทีสำหรับเอาต์พุตในสตรีมเอาต์พุต |
pollInterval |
long: เวลาเริ่มต้นที่ต้องรอระหว่างการพยายามดำเนินการ |
maxTime |
long: เวลาสูงสุดโดยประมาณทั้งหมดที่จะลองดำเนินการต่อ |
runnable |
IRunUtil.IRunnableResult: IRunUtil.IRunnableResult เพื่อดำเนินการ |
| คิกรีเทิร์น | |
|---|---|
boolean |
true หากการดำเนินการเสร็จสมบูรณ์ก่อนที่ maxTime จะหมดอายุ |
runTimed
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: timeout เวลารอสูงสุดเป็นมิลลิวินาที 0 หมายถึงไม่มีการหมดเวลา |
stdout |
OutputStream: ERROR(/OutputStream) ซึ่งจะเปลี่ยนเส้นทางเอาต์พุตมาตรฐาน อาจเป็นค่าว่าง |
stderr |
OutputStream: ERROR(/OutputStream) ซึ่งจะเปลี่ยนเส้นทางเอาต์พุตข้อผิดพลาด อาจเป็นค่าว่าง |
command |
String: คำสั่งของระบบที่ระบุและอาร์กิวเมนต์ที่จะส่งไปยัง exec (ไม่บังคับ) |
| คิกรีเทิร์น | |
|---|---|
CommandResult |
CommandResult ที่มีผลลัพธ์จากการเรียกใช้คำสั่ง |
runTimedCmd
public CommandResult runTimedCmd (long timeout, String... command)
เมธอดตัวช่วยในการเรียกใช้คำสั่งของระบบ และยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ
| พารามิเตอร์ | |
|---|---|
timeout |
long: เวลารอสูงสุดเป็นมิลลิวินาที 0 หมายถึงไม่มีการหมดเวลา |
command |
String: คำสั่งของระบบที่ระบุและอาร์กิวเมนต์ที่จะส่งไปยัง exec (ไม่บังคับ) |
| คิกรีเทิร์น | |
|---|---|
CommandResult |
CommandResult ที่มีผลลัพธ์จากการเรียกใช้คำสั่ง |
runTimedCmdRetry
public CommandResult runTimedCmdRetry (long timeout, long retryInterval, int attempts, String... command)
เมธอดตัวช่วยในการเรียกใช้คำสั่งของระบบ และยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ
| พารามิเตอร์ | |
|---|---|
timeout |
long: เวลารอสูงสุดเป็นมิลลิวินาทีสำหรับการพยายามแต่ละครั้ง |
retryInterval |
long: เวลาที่ต้องรอระหว่างการลองส่งคำสั่งอีกครั้ง |
attempts |
int: จำนวนครั้งสูงสุดที่พยายาม |
command |
String: คำสั่งของระบบที่ระบุและอาร์กิวเมนต์ที่จะส่งไปยัง exec (ไม่บังคับ) |
| คิกรีเทิร์น | |
|---|---|
CommandResult |
CommandResult ที่มีผลลัพธ์จากการเรียกใช้คำสั่ง |
runTimedCmdRetryWithOutputMonitor
public CommandResult runTimedCmdRetryWithOutputMonitor (long timeout, long idleOutputTimeout, long retryInterval, int attempts, String... command)
เมธอดตัวช่วยในการเรียกใช้คำสั่งของระบบ และยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ นอกจากนี้ ยังตรวจสอบสตรีมเอาต์พุตเพื่อหากิจกรรม และยกเลิกหากไม่พบกิจกรรมสตรีม เป็นระยะเวลาที่ระบุ หากตั้งค่า idleOutputTimeout เป็น 0 จะไม่มีการตรวจสอบสตรีม
| พารามิเตอร์ | |
|---|---|
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 ที่มีผลลัพธ์จากการเรียกใช้คำสั่ง |
runTimedCmdSilentlyRetry
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: timeout เวลาสูงสุดที่จะรอเป็นมิลลิวินาที 0 หมายถึงไม่มีการหมดเวลา |
input |
String: อินพุต stdin ที่จะส่งไปยังกระบวนการ |
stdoutFile |
File: ERROR(/File) ซึ่งจะเปลี่ยนเส้นทางเอาต์พุตมาตรฐาน อาจเป็นค่าว่าง |
stderrFile |
File: ERROR(/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)
เมธอด Helper สำหรับเรียกใช้คำสั่งของระบบที่ต้องเปลี่ยนเส้นทาง Stdin จากไฟล์ และ ยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ
| พารามิเตอร์ | |
|---|---|
timeout |
long: เวลาสูงสุดที่จะรอเป็นมิลลิวินาที |
inputRedirect |
File: ERROR(/File) เพื่อเปลี่ยนเส้นทางเป็นอินพุตมาตรฐานโดยใช้ ProcessBuilder.redirectInput() หากเป็นค่าว่าง ระบบจะไม่เปลี่ยนเส้นทาง stdin |
command |
String: คำสั่งของระบบที่ระบุและอาร์กิวเมนต์ที่จะส่งไปยัง exec (ไม่บังคับ) |
| คิกรีเทิร์น | |
|---|---|
CommandResult |
CommandResult ที่มีผลลัพธ์จากการเรียกใช้คำสั่ง |
runTimedCmdWithOutputMonitor
public CommandResult runTimedCmdWithOutputMonitor (long timeout, long idleOutputTimeout, OutputStream stdout, OutputStream stderr, String... command)
เมธอดช่วยในการเรียกใช้คำสั่งของระบบ ยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ
และเปลี่ยนเส้นทางเอาต์พุตไปยังไฟล์หากระบุไว้ เมื่อระบุ ERROR(/OutputStream) ในลักษณะนี้
ระบบจะปล่อยให้เปิดไว้ที่ส่วนท้ายของฟังก์ชัน
| พารามิเตอร์ | |
|---|---|
timeout |
long: timeout เวลาสูงสุดที่จะรอเป็นมิลลิวินาที 0 หมายถึงไม่มีการหมดเวลา |
idleOutputTimeout |
long: เวลาสูงสุดที่จะรอในหน่วยมิลลิวินาทีสำหรับเอาต์พุตในสตรีมเอาต์พุต |
stdout |
OutputStream: ERROR(/OutputStream) ซึ่งจะเปลี่ยนเส้นทางเอาต์พุตมาตรฐาน อาจเป็นค่าว่าง |
stderr |
OutputStream: ERROR(/OutputStream) ซึ่งจะเปลี่ยนเส้นทางเอาต์พุตข้อผิดพลาด อาจเป็นค่าว่าง |
command |
String: คำสั่งของระบบที่ระบุและอาร์กิวเมนต์ที่จะส่งไปยัง exec (ไม่บังคับ) |
| คิกรีเทิร์น | |
|---|---|
CommandResult |
CommandResult ที่มีผลลัพธ์จากการเรียกใช้คำสั่ง |
runTimedCmdWithOutputMonitor
public CommandResult runTimedCmdWithOutputMonitor (long timeout, long idleOutputTimeout, String... command)
เมธอดตัวช่วยในการเรียกใช้คำสั่งของระบบ และยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ นอกจากนี้ ยังตรวจสอบสตรีมเอาต์พุตเพื่อหากิจกรรม และยกเลิกหากไม่พบกิจกรรมสตรีม เป็นระยะเวลาที่ระบุ หากตั้งค่า idleOutputTimeout เป็น 0 จะไม่มีการตรวจสอบสตรีม
| พารามิเตอร์ | |
|---|---|
timeout |
long: เวลารอสูงสุดเป็นมิลลิวินาที 0 หมายถึงไม่มีการหมดเวลา |
idleOutputTimeout |
long: เวลาสูงสุดที่จะรอในหน่วยมิลลิวินาทีสำหรับเอาต์พุตในสตรีมเอาต์พุต |
command |
String: คำสั่งของระบบที่ระบุและอาร์กิวเมนต์ที่จะส่งไปยัง exec (ไม่บังคับ) |
| คิกรีเทิร์น | |
|---|---|
CommandResult |
CommandResult ที่มีผลลัพธ์จากการเรียกใช้คำสั่ง |
runTimedRetry
public boolean runTimedRetry (long opTimeout,
long pollInterval,
int attempts,
IRunUtil.IRunnableResult runnable)บล็อกและดำเนินการหลายครั้งจนกว่าจะสำเร็จ
| พารามิเตอร์ | |
|---|---|
opTimeout |
long: เวลาสูงสุดที่จะรอเป็นมิลลิวินาทีสำหรับการพยายามดำเนินการ 1 ครั้ง |
pollInterval |
long: เวลาที่ต้องรอระหว่างการลองส่งคำสั่งอีกครั้ง |
attempts |
int: จำนวนครั้งสูงสุดที่พยายาม |
runnable |
IRunUtil.IRunnableResult: IRunUtil.IRunnableResult เพื่อดำเนินการ |
| คิกรีเทิร์น | |
|---|---|
boolean |
true หากการดำเนินการเสร็จสมบูรณ์ก่อนที่จะถึงจำนวนครั้งที่พยายาม |
runTimedRetryWithOutputMonitor
public boolean runTimedRetryWithOutputMonitor (long opTimeout,
long idleOutputTimeout,
long pollInterval,
int attempts,
IRunUtil.IRunnableResult runnable)บล็อกและดำเนินการหลายครั้งจนกว่าจะสำเร็จ นอกจากนี้ ยังตรวจสอบสตรีมเอาต์พุตเพื่อหากิจกรรม และยกเลิกหากไม่พบกิจกรรมสตรีมในช่วงเวลาที่กำหนด หากตั้งค่า idleOutputTimeout เป็น 0 จะไม่มีการตรวจสอบสตรีม
| พารามิเตอร์ | |
|---|---|
opTimeout |
long: เวลาสูงสุดที่จะรอเป็นมิลลิวินาทีสำหรับการพยายามดำเนินการ 1 ครั้ง |
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)
บล็อกและดำเนินการ โดยจะยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ นอกจากนี้ ยังตรวจสอบกิจกรรมในสตรีมเอาต์พุตและยกเลิกหากไม่พบกิจกรรมในสตรีมเป็นเวลา ที่ระบุ หากตั้งค่า idleOutputTimeout เป็น 0 จะไม่มีการตรวจสอบสตรีม
| พารามิเตอร์ | |
|---|---|
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)
อนุญาตให้ใช้การหยุดชะงัก "kill" ของ Linux ในกระบวนการที่ทำงานผ่านเมธอด #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 |
unsetEnvVariable
public void unsetEnvVariable (String key)
ยกเลิกการตั้งค่าตัวแปรสภาพแวดล้อมเพื่อให้คำสั่งของระบบทำงานได้โดยไม่มีตัวแปรสภาพแวดล้อมนี้
ตัวแปรสภาพแวดล้อมอาจรับค่ามาจากกระบวนการระดับบนสุด ดังนั้นเราจึงต้องลบ
ตัวแปรสภาพแวดล้อมออกจาก ProcessBuilder.environment()
| พารามิเตอร์ | |
|---|---|
key |
String: ชื่อตัวแปร |
ดูเพิ่มเติม: