RunUtil

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)

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

ProcessBuilder createProcessBuilder(Redirect redirect, commandList, boolean enableCache)
static IRunUtil getDefault()

รับการอ้างอิงไปยังออบเจ็กต์ RunUtil เริ่มต้น

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

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

void interrupt(Thread thread, String message)

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

boolean isInterruptAllowed()

กำหนดสถานะการรบกวนของ RunUtil

static File 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)

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

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)

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

void setRedirectStderrToStdout(boolean redirect)

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

void setWorkingDir(File dir)

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

void sleep(long time)

วิธีการของ Helper ให้นอนหลับตามเวลาที่กำหนดโดยไม่สนใจข้อยกเว้นใดๆ

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

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

void uploadCache(ICacheClient cacheClient, ExecutableActionResult actionResult)

อัปโหลด ExecutableActionResult รายการล่าสุดที่เรียกใช้ด้วย cacheClient

ช่อง

INHERITIO_PREFIX

public static final String INHERITIO_PREFIX

RUNNABLE_NOTIFIER_NAME

public static final String RUNNABLE_NOTIFIER_NAME

ตัวสร้างแบบสาธารณะ

RunUtil

public RunUtil ()

สร้างออบเจ็กต์ RunUtil ใหม่เพื่อใช้งาน

RunUtil

public RunUtil (boolean inheritEnvVars)

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

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

อนุญาตการพัก

public void allowInterrupt (boolean allow)

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

พารามิเตอร์
allow boolean: อนุญาตให้การเรียกใช้ขัดจังหวะในเธรดปัจจุบันหรือไม่

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 จริงหากการเรียกใช้สามารถขัดจังหวะได้ หรือเป็นเท็จ

linkFile

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

ลิงก์ target กับสถานที่ในส่วน destRoot

หากไฟล์เป้าหมายหรือลิงก์สัญลักษณ์มีอยู่แล้วใน destRoot ระบบจะไม่ลิงก์ไฟล์

พารามิเตอร์
destRoot File: รูทของปลายทาง

relToRoot String: เส้นทางแบบสัมพัทธ์จากไดเรกทอรีปลายทางไปยังรูท

target File: ไฟล์เป้าหมายที่จะลิงก์

คิกรีเทิร์น
File ลิงก์สัญลักษณ์

การขว้าง
หากลิงก์ไฟล์เป้าหมายไม่สำเร็จ

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: คำสั่งระบบที่ระบุและอาร์กิวเมนต์ที่ไม่บังคับดำเนินการ

คิกรีเทิร์น
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 จะหมดอายุ

เรียกใช้FixedTimedRetryWithOutputMonitor

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

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

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

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) ด้วยวิธีนี้ ระบบจะเปิด ERROR(/OutputStream) ไว้ที่ส่วนท้ายของฟังก์ชัน

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

stdout OutputStream: ERROR(/OutputStream) ซึ่งระบบจะเปลี่ยนเส้นทางเอาต์พุต std อาจเป็นค่าว่างได้

stderr OutputStream: ERROR(/OutputStream) ซึ่งระบบจะเปลี่ยนเส้นทางเอาต์พุตข้อผิดพลาด อาจเป็นค่าว่างได้

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

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

runTimedCmd

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

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

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

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

คิกรีเทิร์น
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)

เมธอดตัวช่วยสำหรับเรียกใช้คําสั่งของระบบและยกเลิกหากใช้เวลานานกว่าที่ระบุไว้ รวมถึงตรวจสอบสตรีมเอาต์พุตเพื่อหากิจกรรมด้วย โดยจะหยุดทำงานหากไม่พบกิจกรรมในสตรีมเป็นระยะเวลาหนึ่งๆ หากตั้งค่า iframeOutputTimeout เป็น 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: คำสั่งระบบที่ระบุและอาร์กิวเมนต์ที่ไม่บังคับดำเนินการ

คิกรีเทิร์น
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 ที่มีผลลัพธ์จากการเรียกใช้คําสั่ง

การเรียกใช้เวลา CmdWithInput

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

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

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

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

stdoutFile File: ERROR(/File) ที่จะมีการเปลี่ยนเส้นทางเอาต์พุต Std อาจเป็นค่าว่างได้

stderrFile File: ERROR(/File) ซึ่งระบบจะเปลี่ยนเส้นทางเอาต์พุตข้อผิดพลาด อาจเป็นค่าว่างได้

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

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

การเรียกใช้เวลา CmdWithInput

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: ERROR(/File) ที่จะเปลี่ยนเส้นทางเป็นอินพุตมาตรฐานโดยใช้ ProcessBuilder.redirectInput() หากเป็น Null ระบบจะไม่เปลี่ยนเส้นทาง stdin

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

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

runTimedCmdWithOutputMonitor

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

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

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

idleOutputTimeout long: เวลาสูงสุดที่รอเป็นมิลลิวินาทีสําหรับเอาต์พุตในสตรีมเอาต์พุต

stdout OutputStream: ERROR(/OutputStream) ซึ่งระบบจะเปลี่ยนเส้นทางเอาต์พุต std อาจเป็นค่าว่างได้

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

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

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

RunTimedCmdWithOutputMonitor

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

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

พารามิเตอร์
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: ERROR(/OutputStream) ซึ่งระบบจะเปลี่ยนเส้นทางเอาต์พุต std อาจเป็นค่าว่างได้

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

cacheClient ICacheClient: อินสแตนซ์ของ ICacheClient ที่ใช้จัดการการแคช

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

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

จับเวลา ลองใหม่

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)

บล็อกและดำเนินการหลายครั้งจนกว่าจะสำเร็จ รวมถึงตรวจสอบกิจกรรมในสตรีมเอาต์พุตด้วย โดยจะหยุดทำงานหากไม่พบกิจกรรมในสตรีมเป็นระยะเวลาหนึ่งๆ หากตั้งค่า iframeOutputTimeout เป็น 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

ตัวแปร setEnv

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: ms เข้าสู่โหมดสลีป ค่าที่น้อยกว่าหรือเท่ากับ 0 จะถูกละเว้น

เปรียบเทียบ

public static String toRelative (File start, 
                File target)

พารามิเตอร์
start File

target File

คิกรีเทิร์น
String

toRelative

public static String toRelative (File start, 
                String target)

พารามิเตอร์
start File

target String

คิกรีเทิร์น
String

ตัวแปรไม่ได้ตั้งค่าEnv

public void unsetEnvVariable (String key)

ยกเลิกการตั้งค่าตัวแปรสภาพแวดล้อมเพื่อให้ระบบทำงานโดยไม่มีตัวแปรสภาพแวดล้อมนี้ ตัวแปรสภาพแวดล้อมอาจรับค่าจากกระบวนการระดับบนสุด เราจึงต้องลบตัวแปรสภาพแวดล้อมออกจาก ProcessBuilder.environment()

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

ดูเพิ่มเติม

uploadCache

public void uploadCache (ICacheClient cacheClient, 
                ExecutableActionResult actionResult)

อัปโหลด ExecutableActionResult รายการล่าสุดที่เรียกใช้ด้วย cacheClient

พารามิเตอร์
cacheClient ICacheClient: ICacheClient ที่ใช้อัปโหลดผล

actionResult ExecutableActionResult: ExecutableActionResult ที่จะอัปโหลด