IRunUtil

public interface IRunUtil

com.android.tradefed.util.IRunUtil


อินเทอร์เฟซสำหรับเรียกใช้การดำเนินการที่กำหนดเวลาไว้และคำสั่งของระบบ

สรุป

คลาสที่ซ้อนกัน

interface IRunUtil.IRunnableResult

อินเทอร์เฟซสำหรับการดำเนินการแบบอะซิงโครนัสที่แสดงผลสถานะบูลีน 

เมธอดสาธารณะ

abstract void allowInterrupt(boolean allow)

อนุญาต/ไม่อนุญาตให้มีการหยุดการเรียกใช้ในเธรดปัจจุบัน

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

ขัดจังหวะการดำเนินการเรียกใช้ที่กำลังดำเนินอยู่/กำลังจะเกิดขึ้นในเธรดที่ระบุ

abstract void interrupt(Thread thread, String message)

ขัดจังหวะการดำเนินการเรียกใช้ที่กำลังดำเนินอยู่/กำลังจะเกิดขึ้นในเธรดที่ระบุ

abstract boolean isInterruptAllowed()

ระบุสถานะการขัดจังหวะของ RunUtil

abstract Process runCmdInBackground(ProcessBuilder.Redirect redirect, List<String> command)

runCmdInBackground(String...) วิธีอื่นที่ยอมรับอาร์กิวเมนต์คำสั่ง ในรูปแบบ List

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

เมธอดตัวช่วยในการเรียกใช้คำสั่งของระบบแบบไม่พร้อมกัน

abstract Process runCmdInBackground(List<String> command)

runCmdInBackground(String...) วิธีอื่นที่ยอมรับอาร์กิวเมนต์คำสั่ง ในรูปแบบ List

abstract Process runCmdInBackground(String... command)

เมธอดตัวช่วยในการเรียกใช้คำสั่งของระบบแบบไม่พร้อมกัน

abstract Process runCmdInBackground(List<String> command, OutputStream output)

การเรียกใช้คำสั่งด้วย OutputStream จะบันทึกเอาต์พุตของคำสั่ง

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

บล็อกและดำเนินการหลายครั้งจนกว่าจะสำเร็จ

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

บล็อกและดำเนินการหลายครั้งจนกว่าจะสำเร็จ

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

บล็อกและดำเนินการหลายครั้งจนกว่าจะสำเร็จ

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

บล็อกและดำเนินการ โดยจะยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ

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

เมธอด Helper เพื่อเรียกใช้คำสั่งของระบบ และยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ

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

เมธอดช่วยในการเรียกใช้คำสั่งของระบบ ยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ และเปลี่ยนเส้นทางเอาต์พุตไปยังไฟล์หากระบุไว้

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

เมธอด Helper เพื่อเรียกใช้คำสั่งของระบบ และยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ

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

เมธอด Helper เพื่อเรียกใช้คำสั่งของระบบ และยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ

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

เมธอด Helper เพื่อเรียกใช้คำสั่งของระบบ และยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ

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

เมธอด Helper เพื่อเรียกใช้คำสั่งของระบบ และยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ

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

เมธอดช่วยในการเรียกใช้คำสั่งของระบบที่ต้องมีอินพุต stdin และยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ

abstract CommandResult runTimedCmdWithInput(long timeout, String input, List<String> command)

เมธอดช่วยในการเรียกใช้คำสั่งของระบบที่ต้องมีอินพุต stdin และยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ

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

เมธอดช่วยในการเรียกใช้คำสั่งของระบบ ยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ และเปลี่ยนเส้นทางเอาต์พุตไปยังไฟล์หากระบุไว้

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

เมธอดตัวช่วยในการเรียกใช้คำสั่งของระบบที่ต้องเปลี่ยนเส้นทาง Stdin จากไฟล์ และ ยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ

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

เมธอด Helper เพื่อเรียกใช้คำสั่งของระบบ และยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ

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

เมธอดช่วยในการเรียกใช้คำสั่งของระบบ ยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ และเปลี่ยนเส้นทางเอาต์พุตไปยังไฟล์หากระบุไว้

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

บล็อกและดำเนินการหลายครั้งจนกว่าจะสำเร็จ

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

บล็อกและดำเนินการหลายครั้งจนกว่าจะสำเร็จ

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

บล็อกและดำเนินการ โดยจะยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ

abstract void setEnvVariable(String key, String value)

ตั้งค่าตัวแปรสภาพแวดล้อมที่จะใช้เมื่อเรียกใช้คำสั่งของระบบ

abstract void setEnvVariablePriority(IRunUtil.EnvPriority priority)

เลือกว่าเมื่อสร้างกระบวนการ การยกเลิกการตั้งค่าตัวแปรสภาพแวดล้อมจะมีลำดับความสำคัญสูงกว่าการตั้งค่าหรือไม่

abstract void setInterruptibleInFuture(Thread thread, long timeMs)

ตั้งค่าให้ขัดจังหวะได้หลังจากรอสักครู่

abstract void setLinuxInterruptProcess(boolean interrupt)

อนุญาตให้ใช้การหยุดชะงัก "kill" ของ Linux ในกระบวนการที่ทำงานผ่านเมธอด #runTimed เมื่อถึงการหมดเวลา

abstract void setRedirectStderrToStdout(boolean redirect)

ตั้งค่าสตรีมข้อผิดพลาดมาตรฐานให้เปลี่ยนเส้นทางไปยังสตรีมเอาต์พุตมาตรฐานเมื่อเรียกใช้คำสั่งของระบบ

abstract void setWorkingDir(File dir)

ตั้งค่าไดเรกทอรีการทำงานสำหรับคำสั่งของระบบ

abstract void sleep(long time)

เมธอดตัวช่วยในการหยุดทำงานตามระยะเวลาที่กำหนดโดยไม่สนใจข้อยกเว้น

abstract void unsetEnvVariable(String key)

ยกเลิกการตั้งค่าตัวแปรสภาพแวดล้อมเพื่อให้คำสั่งของระบบทำงานได้โดยไม่มีตัวแปรสภาพแวดล้อมนี้

เมธอดสาธารณะ

allowInterrupt

public abstract void allowInterrupt (boolean allow)

อนุญาต/ไม่อนุญาตให้มีการหยุดการเรียกใช้ในเธรดปัจจุบัน หากได้รับอนุญาต การดำเนินการของ เทรดปัจจุบันอาจถูกขัดจังหวะจากเทรดอื่นผ่านเมธอด interrupt(Thread, String)

พารามิเตอร์
allow boolean: whether to allow run interrupts on the current thread.

ขัดจังหวะ

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

ขัดจังหวะการดำเนินการเรียกใช้ที่กำลังดำเนินอยู่/กำลังจะเกิดขึ้นในเธรดที่ระบุ การดำเนินการรันใน เธรดที่ระบุจะทำให้เกิด RunInterruptedException

พารามิเตอร์
message String: ข้อความสำหรับ RunInterruptedException

errorId ErrorIdentifier: แสดงสาเหตุของการหยุดชะงักเมื่อทราบ

ขัดจังหวะ

public abstract void interrupt (Thread thread, 
                String message)

ขัดจังหวะการดำเนินการเรียกใช้ที่กำลังดำเนินอยู่/กำลังจะเกิดขึ้นในเธรดที่ระบุ การดำเนินการรันใน เธรดที่ระบุจะทำให้เกิด RunInterruptedException

พารามิเตอร์
message String: ข้อความสำหรับ RunInterruptedException

isInterruptAllowed

public abstract boolean isInterruptAllowed ()

ระบุสถานะการขัดจังหวะของ RunUtil

การคืนสินค้า
boolean เป็นจริงหากขัดจังหวะการเรียกใช้ได้ มิเช่นนั้นจะเป็นเท็จ

runCmdInBackground

public abstract Process runCmdInBackground (ProcessBuilder.Redirect redirect, 
                List<String> command)

runCmdInBackground(String...) วิธีอื่นที่ยอมรับอาร์กิวเมนต์คำสั่ง ในรูปแบบ List

พารามิเตอร์
redirect ProcessBuilder.Redirect: Redirect ที่จะใช้กับ ProcessBuilder

command List: List ที่มีคำสั่งของระบบที่ระบุและอาร์กิวเมนต์ (ไม่บังคับ) ที่จะดำเนินการ

การคืนสินค้า
Process Process ของคำสั่งที่ดำเนินการ

ส่ง
IOException หากเรียกใช้คำสั่งไม่สำเร็จ

runCmdInBackground

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

เมธอดตัวช่วยในการเรียกใช้คำสั่งของระบบแบบไม่พร้อมกัน

จะกลับมาทันทีหลังจากเปิดใช้คำสั่ง

พารามิเตอร์
redirect ProcessBuilder.Redirect: Redirect ที่จะใช้กับ ProcessBuilder

command String: คำสั่งระบบที่ระบุและอาร์กิวเมนต์ที่จะส่งไปยัง exec (ไม่บังคับ)

การคืนสินค้า
Process Process ของคำสั่งที่ดำเนินการ

ส่ง
IOException หากเรียกใช้คำสั่งไม่สำเร็จ

runCmdInBackground

public abstract Process runCmdInBackground (List<String> command)

runCmdInBackground(String...) วิธีอื่นที่ยอมรับอาร์กิวเมนต์คำสั่ง ในรูปแบบ List

พารามิเตอร์
command List: List ที่มีคำสั่งของระบบที่ระบุและอาร์กิวเมนต์ (ไม่บังคับ) เพื่อดำเนินการ

การคืนสินค้า
Process Process ของคำสั่งที่ดำเนินการ

ส่ง
IOException หากเรียกใช้คำสั่งไม่สำเร็จ

runCmdInBackground

public abstract Process runCmdInBackground (String... command)

เมธอดตัวช่วยในการเรียกใช้คำสั่งของระบบแบบไม่พร้อมกัน

จะกลับมาทันทีหลังจากเปิดใช้คำสั่ง

พารามิเตอร์
command String: คำสั่งระบบที่ระบุและอาร์กิวเมนต์ที่จะส่งไปยัง exec (ไม่บังคับ)

การคืนสินค้า
Process Process ของคำสั่งที่ดำเนินการ

ส่ง
IOException หากเรียกใช้คำสั่งไม่สำเร็จ

runCmdInBackground

public abstract Process runCmdInBackground (List<String> command, 
                OutputStream output)

การเรียกใช้คำสั่งด้วย OutputStream จะบันทึกเอาต์พุตของคำสั่ง ระบบจะรวม stdout และ stderr เข้าด้วยกัน

พารามิเตอร์
command List: คำสั่งที่จะเรียกใช้

output OutputStream: OutputStream เพื่อบันทึกเอาต์พุต

การคืนสินค้า
Process Process เรียกใช้คำสั่ง

ส่ง
java.io.IOException
IOException

runEscalatingTimedRetry

public abstract 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 abstract 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 abstract 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 abstract CommandStatus runTimed (long timeout, 
                IRunUtil.IRunnableResult runnable, 
                boolean logErrors)

บล็อกและดำเนินการ โดยจะยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ

พารามิเตอร์
timeout long: เวลาสูงสุดที่จะรอเป็นมิลลิวินาที

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult เพื่อดำเนินการ

logErrors boolean: บันทึกข้อผิดพลาดในข้อยกเว้นหรือไม่

การคืนสินค้า
CommandStatus CommandStatus ผลลัพธ์ของการดำเนินการ

runTimedCmd

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

เมธอด Helper เพื่อเรียกใช้คำสั่งของระบบ และยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ

พารามิเตอร์
timeout long: เวลาสูงสุดที่จะรอเป็นมิลลิวินาที 0 หมายถึงไม่มีการหมดเวลา

command String: คำสั่งระบบที่ระบุและอาร์กิวเมนต์ที่จะส่งไปยัง exec (ไม่บังคับ)

การคืนสินค้า
CommandResult CommandResult ที่มีผลลัพธ์จากการเรียกใช้คำสั่ง

runTimedCmd

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

เมธอดช่วยในการเรียกใช้คำสั่งของระบบ ยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ และเปลี่ยนเส้นทางเอาต์พุตไปยังไฟล์หากระบุไว้ เมื่อระบุ OutputStream ในลักษณะนี้ ระบบจะปล่อยให้เปิดไว้ที่ส่วนท้ายของฟังก์ชัน

พารามิเตอร์
timeout long: timeout เวลาสูงสุดที่จะรอเป็นมิลลิวินาที 0 หมายถึงไม่มีการหมดเวลา

stdout OutputStream: OutputStream ที่จะเปลี่ยนเส้นทางเอาต์พุตมาตรฐาน อาจเป็นค่าว่าง

stderr OutputStream: OutputStream ที่จะเปลี่ยนเส้นทางเอาต์พุตข้อผิดพลาด อาจเป็นค่าว่าง

command String: คำสั่งระบบที่ระบุและอาร์กิวเมนต์ที่จะส่งไปยัง exec (ไม่บังคับ)

การคืนสินค้า
CommandResult CommandResult ที่มีผลลัพธ์จากการเรียกใช้คำสั่ง

runTimedCmdRetry

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

เมธอด Helper เพื่อเรียกใช้คำสั่งของระบบ และยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ

พารามิเตอร์
timeout long: เวลาสูงสุดที่จะรอเป็นมิลลิวินาทีสำหรับการพยายามแต่ละครั้ง

retryInterval long: เวลาที่ต้องรอระหว่างการลองส่งคำสั่งอีกครั้ง

attempts int: จำนวนครั้งสูงสุดที่พยายาม

command String: คำสั่งระบบที่ระบุและอาร์กิวเมนต์ที่จะส่งไปยัง exec (ไม่บังคับ)

การคืนสินค้า
CommandResult CommandResult ที่มีผลลัพธ์จากการเรียกใช้คำสั่ง

runTimedCmdRetryWithOutputMonitor

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

เมธอด Helper เพื่อเรียกใช้คำสั่งของระบบ และยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ นอกจากนี้ ยังตรวจสอบสตรีมเอาต์พุตเพื่อหากิจกรรม และยกเลิกหากไม่พบกิจกรรมสตรีม เป็นระยะเวลาที่ระบุ หากตั้งค่า idleOutputTimeout เป็น 0 จะไม่มีการตรวจสอบสตรีม

พารามิเตอร์
timeout long: เวลาสูงสุดที่จะรอเป็นมิลลิวินาทีสำหรับการพยายามแต่ละครั้ง

idleOutputTimeout long: เวลาสูงสุดที่จะรอในหน่วยมิลลิวินาทีสำหรับเอาต์พุตในสตรีมเอาต์พุต

retryInterval long: เวลาที่ต้องรอระหว่างการลองส่งคำสั่งอีกครั้ง

attempts int: จำนวนครั้งสูงสุดที่พยายาม

command String: คำสั่งระบบที่ระบุและอาร์กิวเมนต์ที่จะส่งไปยัง exec (ไม่บังคับ)

การคืนสินค้า
CommandResult CommandResult ที่มีผลลัพธ์จากการเรียกใช้คำสั่ง

runTimedCmdSilently

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

เมธอด Helper เพื่อเรียกใช้คำสั่งของระบบ และยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ คล้ายกับ runTimedCmd(long,String...) แต่จะไม่บันทึกข้อผิดพลาดใดๆ ใน ข้อยกเว้น

พารามิเตอร์
timeout long: เวลาสูงสุดที่จะรอเป็นมิลลิวินาที

command String: คำสั่งระบบที่ระบุและอาร์กิวเมนต์ที่จะส่งไปยัง exec (ไม่บังคับ)

การคืนสินค้า
CommandResult CommandResult ที่มีผลลัพธ์จากการเรียกใช้คำสั่ง

runTimedCmdSilentlyRetry

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

เมธอด Helper เพื่อเรียกใช้คำสั่งของระบบ และยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ คล้ายกับ runTimedCmdRetry(long,long,int,String[]) แต่จะไม่บันทึกข้อผิดพลาดใดๆ ในข้อยกเว้น

พารามิเตอร์
timeout long: เวลาสูงสุดที่จะรอเป็นมิลลิวินาที

retryInterval long: เวลาที่ต้องรอระหว่างการลองส่งคำสั่งอีกครั้ง

attempts int: จำนวนครั้งสูงสุดที่พยายาม

command String: คำสั่งระบบที่ระบุและอาร์กิวเมนต์ที่จะส่งไปยัง exec (ไม่บังคับ)

การคืนสินค้า
CommandResult CommandResult ที่มีผลลัพธ์จากการเรียกใช้คำสั่ง

runTimedCmdWithInput

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

เมธอดช่วยในการเรียกใช้คำสั่งของระบบที่ต้องมีอินพุต stdin และยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ

พารามิเตอร์
timeout long: เวลาสูงสุดที่จะรอเป็นมิลลิวินาที

input String: อินพุต stdin ที่จะส่งไปยังกระบวนการ

command String: คำสั่งระบบที่ระบุและอาร์กิวเมนต์ที่จะส่งไปยัง exec (ไม่บังคับ)

การคืนสินค้า
CommandResult CommandResult ที่มีผลลัพธ์จากการเรียกใช้คำสั่ง

runTimedCmdWithInput

public abstract CommandResult runTimedCmdWithInput (long timeout, 
                String input, 
                List<String> command)

เมธอดช่วยในการเรียกใช้คำสั่งของระบบที่ต้องมีอินพุต stdin และยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ

พารามิเตอร์
timeout long: เวลาสูงสุดที่จะรอเป็นมิลลิวินาที

input String: อินพุต stdin ที่จะส่งไปยังกระบวนการ

command List: List ที่มีคำสั่งของระบบและอาร์กิวเมนต์ที่จะดำเนินการ (ไม่บังคับ)

การคืนสินค้า
CommandResult CommandResult ที่มีผลลัพธ์จากการเรียกใช้คำสั่ง

runTimedCmdWithInput

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

เมธอดช่วยในการเรียกใช้คำสั่งของระบบ ยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ และเปลี่ยนเส้นทางเอาต์พุตไปยังไฟล์หากระบุไว้

พารามิเตอร์
timeout long: timeout เวลาสูงสุดที่จะรอเป็นมิลลิวินาที 0 หมายถึงไม่มีการหมดเวลา

input String: อินพุต stdin ที่จะส่งไปยังกระบวนการ

stdoutFile File: File ที่จะเปลี่ยนเส้นทางเอาต์พุตมาตรฐาน อาจเป็นค่าว่าง

stderrFile File: File ที่จะเปลี่ยนเส้นทางเอาต์พุตข้อผิดพลาด อาจเป็นค่าว่าง

command String: คำสั่งระบบที่ระบุและอาร์กิวเมนต์ที่จะส่งไปยัง exec (ไม่บังคับ)

การคืนสินค้า
CommandResult CommandResult ที่มีผลลัพธ์จากการเรียกใช้คำสั่ง

runTimedCmdWithInputRedirect

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

เมธอดตัวช่วยในการเรียกใช้คำสั่งของระบบที่ต้องเปลี่ยนเส้นทาง Stdin จากไฟล์ และ ยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ

พารามิเตอร์
timeout long: เวลาสูงสุดที่จะรอเป็นมิลลิวินาที

inputRedirect File: File เพื่อเปลี่ยนเส้นทางเป็นอินพุตมาตรฐานโดยใช้ ProcessBuilder.redirectInput() หากเป็นค่าว่าง ระบบจะไม่เปลี่ยนเส้นทาง stdin

command String: คำสั่งระบบที่ระบุและอาร์กิวเมนต์ที่จะส่งไปยัง exec (ไม่บังคับ)

การคืนสินค้า
CommandResult CommandResult ที่มีผลลัพธ์จากการเรียกใช้คำสั่ง

runTimedCmdWithOutputMonitor

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

เมธอด Helper เพื่อเรียกใช้คำสั่งของระบบ และยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ นอกจากนี้ ยังตรวจสอบสตรีมเอาต์พุตเพื่อหากิจกรรม และยกเลิกหากไม่พบกิจกรรมสตรีม เป็นระยะเวลาที่ระบุ หากตั้งค่า idleOutputTimeout เป็น 0 จะไม่มีการตรวจสอบสตรีม

พารามิเตอร์
timeout long: เวลาสูงสุดที่จะรอเป็นมิลลิวินาที 0 หมายถึงไม่มีการหมดเวลา

idleOutputTimeout long: เวลาสูงสุดที่จะรอในหน่วยมิลลิวินาทีสำหรับเอาต์พุตในสตรีมเอาต์พุต

command String: คำสั่งระบบที่ระบุและอาร์กิวเมนต์ที่จะส่งไปยัง exec (ไม่บังคับ)

การคืนสินค้า
CommandResult CommandResult ที่มีผลลัพธ์จากการเรียกใช้คำสั่ง

runTimedCmdWithOutputMonitor

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

เมธอดช่วยในการเรียกใช้คำสั่งของระบบ ยกเลิกหากใช้เวลานานกว่าเวลาที่ระบุ และเปลี่ยนเส้นทางเอาต์พุตไปยังไฟล์หากระบุไว้ เมื่อระบุ OutputStream ในลักษณะนี้ ระบบจะปล่อยให้เปิดไว้ที่ส่วนท้ายของฟังก์ชัน

พารามิเตอร์
timeout long: timeout เวลาสูงสุดที่จะรอเป็นมิลลิวินาที 0 หมายถึงไม่มีการหมดเวลา

idleOutputTimeout long: เวลาสูงสุดที่จะรอในหน่วยมิลลิวินาทีสำหรับเอาต์พุตในสตรีมเอาต์พุต

stdout OutputStream: OutputStream ที่จะเปลี่ยนเส้นทางเอาต์พุตมาตรฐาน อาจเป็นค่าว่าง

stderr OutputStream: OutputStream ที่จะเปลี่ยนเส้นทางเอาต์พุตข้อผิดพลาด อาจเป็นค่าว่าง

command String: คำสั่งระบบที่ระบุและอาร์กิวเมนต์ที่จะส่งไปยัง exec (ไม่บังคับ)

การคืนสินค้า
CommandResult CommandResult ที่มีผลลัพธ์จากการเรียกใช้คำสั่ง

runTimedRetry

public abstract 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 abstract 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 abstract 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 abstract void setEnvVariable (String key, 
                String value)

ตั้งค่าตัวแปรสภาพแวดล้อมที่จะใช้เมื่อเรียกใช้คำสั่งของระบบ

พารามิเตอร์
key String: ชื่อตัวแปร

value String: ค่าตัวแปร

ดูเพิ่มเติม:

setEnvVariablePriority

public abstract void setEnvVariablePriority (IRunUtil.EnvPriority priority)

เลือกว่าเมื่อสร้างกระบวนการ การยกเลิกการตั้งค่าตัวแปรสภาพแวดล้อมจะมีลำดับความสำคัญสูงกว่าการตั้งค่าหรือไม่ โดยค่าเริ่มต้น การยกเลิกการตั้งค่าจะมีลำดับความสำคัญสูงกว่า ซึ่งหมายความว่าหากมีการพยายามตั้งค่าตัวแปรที่มีชื่อเดียวกัน จะไม่เกิดขึ้นเนื่องจากระบบจะยกเลิกการตั้งค่าตัวแปร ใช้กับอินสแตนซ์ IRunUtil เริ่มต้นไม่ได้

พารามิเตอร์
priority IRunUtil.EnvPriority

setInterruptibleInFuture

public abstract void setInterruptibleInFuture (Thread thread, 
                long timeMs)

ตั้งค่าให้ขัดจังหวะได้หลังจากรอสักครู่ ERROR(/CommandScheduler#shutdownHard()) เพื่อให้มั่นใจว่าเราจะสิ้นสุดการให้บริการในที่สุด

พารามิเตอร์
thread Thread: เธรดที่จะกลายเป็นเธรดที่ขัดจังหวะได้

timeMs long: เวลาที่ต้องรอ ก่อนตั้งค่าให้ขัดจังหวะได้

setLinuxInterruptProcess

public abstract void setLinuxInterruptProcess (boolean interrupt)

อนุญาตให้ใช้การหยุดชะงัก "kill" ของ Linux ในกระบวนการที่ทำงานผ่านเมธอด #runTimed เมื่อถึงการหมดเวลา ใช้กับอินสแตนซ์ IRunUtil เริ่มต้นไม่ได้

พารามิเตอร์
interrupt boolean

setRedirectStderrToStdout

public abstract void setRedirectStderrToStdout (boolean redirect)

ตั้งค่าสตรีมข้อผิดพลาดมาตรฐานให้เปลี่ยนเส้นทางไปยังสตรีมเอาต์พุตมาตรฐานเมื่อเรียกใช้คำสั่งของระบบ ค่าเริ่มต้นคือเท็จ

พารามิเตอร์
redirect boolean: ค่าใหม่สำหรับว่าจะเปลี่ยนเส้นทางหรือไม่

ดูเพิ่มเติม:

setWorkingDir

public abstract void setWorkingDir (File dir)

ตั้งค่าไดเรกทอรีการทำงานสำหรับคำสั่งของระบบ

พารามิเตอร์
dir File: ไดเรกทอรีที่ใช้งานอยู่

ดูเพิ่มเติม:

การนอนหลับ

public abstract void sleep (long time)

เมธอดตัวช่วยในการหยุดทำงานตามระยะเวลาที่กำหนดโดยไม่สนใจข้อยกเว้น

พารามิเตอร์
time long: มิลลิวินาทีที่จะเข้าสู่โหมดสลีป ระบบจะละเว้นค่าที่น้อยกว่าหรือเท่ากับ 0

unsetEnvVariable

public abstract void unsetEnvVariable (String key)

ยกเลิกการตั้งค่าตัวแปรสภาพแวดล้อมเพื่อให้คำสั่งของระบบทำงานได้โดยไม่มีตัวแปรสภาพแวดล้อมนี้

พารามิเตอร์
key String: ชื่อตัวแปร

ดูเพิ่มเติม: