IRunUtil

public interface IRunUtil

com.android.tradefed.util.IRunUtil


Giao diện để chạy các thao tác có thời gian và lệnh hệ thống.

Tóm tắt

Lớp lồng ghép

interface IRunUtil.IRunnableResult

Một giao diện để thực thi không đồng bộ một thao tác trả về trạng thái boolean. 

Phương thức công khai

abstract void allowInterrupt(boolean allow)

Cho phép/không cho phép các gián đoạn chạy trên luồng hiện tại.

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

Làm gián đoạn các thao tác chạy đang diễn ra/sắp diễn ra trên luồng đã cho.

abstract void interrupt(Thread thread, String message)

Làm gián đoạn các thao tác chạy đang diễn ra/sắp diễn ra trên luồng đã cho.

abstract boolean isInterruptAllowed()

Đưa ra trạng thái gián đoạn của RunUtil.

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

Một phương thức runCmdInBackground(String...) thay thế chấp nhận các đối số lệnh ở dạng List.

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

Phương thức trợ giúp để thực thi một lệnh hệ thống không đồng bộ.

abstract Process runCmdInBackground(List<String> command)

Một phương thức runCmdInBackground(String...) thay thế chấp nhận các đối số lệnh ở dạng List.

abstract Process runCmdInBackground(String... command)

Phương thức trợ giúp để thực thi một lệnh hệ thống không đồng bộ.

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

Chạy lệnh bằng OutputStream để ghi nhật ký đầu ra của lệnh.

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

Chặn và thực thi một thao tác nhiều lần cho đến khi thành công.

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

Chặn và thực thi một thao tác nhiều lần cho đến khi thành công.

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

Chặn và thực thi một thao tác nhiều lần cho đến khi thành công.

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

Chặn và thực thi một thao tác, huỷ bỏ nếu thao tác đó mất nhiều thời gian hơn một khoảng thời gian cụ thể.

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

Phương thức trợ giúp để thực thi một lệnh hệ thống và huỷ bỏ nếu lệnh đó mất nhiều thời gian hơn một khoảng thời gian đã chỉ định.

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

Phương thức trợ giúp để thực thi một lệnh hệ thống, huỷ nếu lệnh mất nhiều thời gian hơn một khoảng thời gian cụ thể và chuyển hướng đầu ra đến các tệp nếu được chỉ định.

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

Phương thức trợ giúp để thực thi một lệnh hệ thống và huỷ bỏ nếu lệnh đó mất nhiều thời gian hơn một khoảng thời gian đã chỉ định.

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

Phương thức trợ giúp để thực thi một lệnh hệ thống và huỷ bỏ nếu lệnh đó mất nhiều thời gian hơn một khoảng thời gian đã chỉ định.

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

Phương thức trợ giúp để thực thi một lệnh hệ thống và huỷ bỏ nếu lệnh đó mất nhiều thời gian hơn một khoảng thời gian đã chỉ định.

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

Phương thức trợ giúp để thực thi một lệnh hệ thống và huỷ bỏ nếu lệnh đó mất nhiều thời gian hơn một khoảng thời gian đã chỉ định.

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

Phương thức trợ giúp để thực thi một lệnh hệ thống yêu cầu đầu vào stdin và huỷ bỏ nếu lệnh đó mất nhiều thời gian hơn một khoảng thời gian đã chỉ định.

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

Phương thức trợ giúp để thực thi một lệnh hệ thống yêu cầu đầu vào stdin và huỷ bỏ nếu lệnh đó mất nhiều thời gian hơn một khoảng thời gian đã chỉ định.

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

Phương thức trợ giúp để thực thi một lệnh hệ thống, huỷ nếu lệnh mất nhiều thời gian hơn một khoảng thời gian cụ thể và chuyển hướng đầu ra đến các tệp nếu được chỉ định.

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

Phương thức trợ giúp để thực thi một lệnh hệ thống yêu cầu chuyển hướng Stdin từ một tệp và huỷ nếu lệnh này mất nhiều thời gian hơn một khoảng thời gian đã chỉ định.

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

Phương thức trợ giúp để thực thi một lệnh hệ thống và huỷ bỏ nếu lệnh đó mất nhiều thời gian hơn một khoảng thời gian đã chỉ định.

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

Phương thức trợ giúp để thực thi một lệnh hệ thống, huỷ nếu lệnh mất nhiều thời gian hơn một khoảng thời gian cụ thể và chuyển hướng đầu ra đến các tệp nếu được chỉ định.

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

Chặn và thực thi một thao tác nhiều lần cho đến khi thành công.

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

Chặn và thực thi một thao tác nhiều lần cho đến khi thành công.

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

Chặn và thực thi một thao tác, huỷ bỏ nếu thao tác đó mất nhiều thời gian hơn một khoảng thời gian cụ thể.

abstract void setEnvVariable(String key, String value)

Đặt một biến môi trường sẽ được dùng khi chạy các lệnh hệ thống.

abstract void setEnvVariablePriority(IRunUtil.EnvPriority priority)

Quyết định xem khi tạo một quy trình, việc huỷ đặt biến môi trường có mức độ ưu tiên cao hơn việc đặt biến môi trường hay không.

abstract void setInterruptibleInFuture(Thread thread, long timeMs)

Đặt là có thể bị gián đoạn sau một khoảng thời gian chờ.

abstract void setLinuxInterruptProcess(boolean interrupt)

Cho phép sử dụng lệnh gián đoạn "kill" của Linux trên quy trình đang chạy thông qua các phương thức #runTimed khi quy trình này đạt đến thời gian chờ.

abstract void setRedirectStderrToStdout(boolean redirect)

Đặt luồng lỗi chuẩn để chuyển hướng đến luồng đầu ra chuẩn khi chạy các lệnh hệ thống.

abstract void setWorkingDir(File dir)

Đặt thư mục làm việc cho các lệnh hệ thống.

abstract void sleep(long time)

Phương thức trợ giúp để ngủ trong thời gian nhất định, bỏ qua mọi trường hợp ngoại lệ.

abstract void unsetEnvVariable(String key)

Huỷ thiết lập một biến môi trường, để các lệnh hệ thống chạy mà không có biến môi trường này.

Phương thức công khai

allowInterrupt

public abstract void allowInterrupt (boolean allow)

Cho phép/không cho phép các gián đoạn chạy trên luồng hiện tại. Nếu được phép, các thao tác chạy của luồng hiện tại có thể bị gián đoạn từ các luồng khác thông qua phương thức interrupt(Thread, String).

Tham số
allow boolean: có cho phép chạy các gián đoạn trên luồng hiện tại hay không.

gián đoạn

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

Làm gián đoạn các thao tác chạy đang diễn ra/sắp diễn ra trên luồng đã cho. Các thao tác chạy trên luồng đã cho sẽ gửi RunInterruptedException.

Tham số
message String: thông báo cho RunInterruptedException.

errorId ErrorIdentifier: Biểu thị nguyên nhân gây ra tình trạng gián đoạn (nếu có).

gián đoạn

public abstract void interrupt (Thread thread, 
                String message)

Làm gián đoạn các thao tác chạy đang diễn ra/sắp diễn ra trên luồng đã cho. Các thao tác chạy trên luồng đã cho sẽ gửi RunInterruptedException.

Tham số
message String: thông báo cho RunInterruptedException.

isInterruptAllowed

public abstract boolean isInterruptAllowed ()

Đưa ra trạng thái gián đoạn của RunUtil.

Giá trị trả về
boolean true nếu Run có thể bị gián đoạn, false nếu không.

runCmdInBackground

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

Một phương thức runCmdInBackground(String...) thay thế chấp nhận các đối số lệnh ở dạng List.

Tham số
redirect ProcessBuilder.Redirect: Redirect để áp dụng cho ProcessBuilder.

command List: List chứa lệnh hệ thống đã chỉ định và các đối số (không bắt buộc) để thực thi

Giá trị trả về
Process Process của lệnh đã thực thi

Gửi
IOException nếu lệnh không chạy được

runCmdInBackground

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

Phương thức trợ giúp để thực thi một lệnh hệ thống không đồng bộ.

Sẽ trả về ngay sau khi khởi chạy lệnh.

Tham số
redirect ProcessBuilder.Redirect: Redirect để áp dụng cho ProcessBuilder.

command String: lệnh hệ thống được chỉ định và các đối số tuỳ chọn để thực thi

Giá trị trả về
Process Process của lệnh đã thực thi

Gửi
IOException nếu lệnh không chạy được

runCmdInBackground

public abstract Process runCmdInBackground (List<String> command)

Một phương thức runCmdInBackground(String...) thay thế chấp nhận các đối số lệnh ở dạng List.

Tham số
command List: List chứa lệnh hệ thống đã chỉ định và các đối số (không bắt buộc) để thực thi

Giá trị trả về
Process Process của lệnh đã thực thi

Gửi
IOException nếu lệnh không chạy được

runCmdInBackground

public abstract Process runCmdInBackground (String... command)

Phương thức trợ giúp để thực thi một lệnh hệ thống không đồng bộ.

Sẽ trả về ngay sau khi khởi chạy lệnh.

Tham số
command String: lệnh hệ thống được chỉ định và các đối số tuỳ chọn để thực thi

Giá trị trả về
Process Process của lệnh đã thực thi

Gửi
IOException nếu lệnh không chạy được

runCmdInBackground

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

Chạy lệnh bằng OutputStream để ghi nhật ký đầu ra của lệnh. Stdout và stderr được hợp nhất với nhau.

Tham số
command List: lệnh để chạy

output OutputStream: OutputStream để lưu đầu ra

Giá trị trả về
Process Process chạy lệnh

Gửi
java.io.IOException
IOException

runEscalatingTimedRetry

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

Chặn và thực thi một thao tác nhiều lần cho đến khi thành công.

Tăng thời gian chờ giữa các lần thử thao tác theo cấp số nhân. Bạn nên sử dụng phương thức này khi thực hiện một thao tác như thăm dò máy chủ, để cho máy chủ có thời gian khôi phục trong trường hợp máy chủ tạm thời ngừng hoạt động.

Tham số
opTimeout long: thời gian chờ tối đa (tính bằng mili giây) cho một lần thử thao tác

initialPollInterval long: thời gian chờ ban đầu giữa các lần thử thao tác

maxPollInterval long: thời gian chờ tối đa giữa các lần thử thao tác

maxTime long: tổng thời gian tối đa ước tính để tiếp tục thử thực hiện thao tác

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult để thực thi

Giá trị trả về
boolean true nếu thao tác hoàn tất thành công trước khi maxTime hết hạn

runFixedTimedRetry

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

Chặn và thực thi một thao tác nhiều lần cho đến khi thành công.

Tham số
opTimeout long: thời gian chờ tối đa (tính bằng mili giây) cho một lần thử thao tác

pollInterval long: thời gian chờ ban đầu giữa các lần thử thao tác

maxTime long: tổng thời gian tối đa ước tính để tiếp tục thử thực hiện thao tác

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult để thực thi

Giá trị trả về
boolean true nếu thao tác hoàn tất thành công trước khi maxTime hết hạn

runFixedTimedRetryWithOutputMonitor

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

Chặn và thực thi một thao tác nhiều lần cho đến khi thành công. Đồng thời giám sát các luồng đầu ra để biết hoạt động, huỷ bỏ nếu không thấy hoạt động nào của luồng trong một khoảng thời gian cụ thể. Nếu bạn đặt idleOutputTimeout thành 0, thì sẽ không có hoạt động giám sát luồng nào diễn ra.

Tham số
opTimeout long: thời gian chờ tối đa (tính bằng mili giây) cho một lần thử thao tác

idleOutputTimeout long: thời gian chờ tối đa tính bằng mili giây để có đầu ra trên các luồng đầu ra

pollInterval long: thời gian chờ ban đầu giữa các lần thử thao tác

maxTime long: tổng thời gian tối đa ước tính để tiếp tục thử thực hiện thao tác

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult để thực thi

Giá trị trả về
boolean true nếu thao tác hoàn tất thành công trước khi maxTime hết hạn

runTimed

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

Chặn và thực thi một thao tác, huỷ bỏ nếu thao tác đó mất nhiều thời gian hơn một khoảng thời gian cụ thể.

Tham số
timeout long: thời gian chờ tối đa tính bằng mili giây

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult để thực thi

logErrors boolean: ghi lỗi vào nhật ký khi có ngoại lệ hay không.

Giá trị trả về
CommandStatus kết quả CommandStatus của thao tác.

runTimedCmd

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

Phương thức trợ giúp để thực thi một lệnh hệ thống và huỷ bỏ nếu lệnh đó mất nhiều thời gian hơn một khoảng thời gian đã chỉ định.

Tham số
timeout long: thời gian chờ tối đa tính bằng mili giây. 0 có nghĩa là không có thời gian chờ.

command String: lệnh hệ thống được chỉ định và các đối số tuỳ chọn để thực thi

Giá trị trả về
CommandResult CommandResult chứa kết quả từ lệnh chạy

runTimedCmd

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

Phương thức trợ giúp để thực thi một lệnh hệ thống, huỷ nếu lệnh mất nhiều thời gian hơn một khoảng thời gian cụ thể và chuyển hướng đầu ra đến các tệp nếu được chỉ định. Khi OutputStream được cung cấp theo cách này, chúng sẽ vẫn mở ở cuối hàm.

Tham số
timeout long: thời gian chờ tối đa tính bằng mili giây. 0 có nghĩa là không có thời gian chờ.

stdout OutputStream: OutputStream nơi đầu ra tiêu chuẩn sẽ được chuyển hướng. Có thể là giá trị rỗng.

stderr OutputStream: OutputStream nơi đầu ra lỗi sẽ được chuyển hướng. Có thể là giá trị rỗng.

command String: lệnh hệ thống được chỉ định và các đối số tuỳ chọn để thực thi

Giá trị trả về
CommandResult CommandResult chứa kết quả từ lệnh chạy

runTimedCmdRetry

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

Phương thức trợ giúp để thực thi một lệnh hệ thống và huỷ bỏ nếu lệnh đó mất nhiều thời gian hơn một khoảng thời gian đã chỉ định.

Tham số
timeout long: thời gian chờ tối đa (tính bằng mili giây) cho mỗi lần thử

retryInterval long: thời gian chờ giữa các lần thử lại lệnh

attempts int: số lần thử tối đa

command String: lệnh hệ thống được chỉ định và các đối số tuỳ chọn để thực thi

Giá trị trả về
CommandResult CommandResult chứa kết quả từ lệnh chạy

runTimedCmdRetryWithOutputMonitor

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

Phương thức trợ giúp để thực thi một lệnh hệ thống và huỷ bỏ nếu lệnh đó mất nhiều thời gian hơn một khoảng thời gian đã chỉ định. Đồng thời giám sát các luồng đầu ra để phát hiện hoạt động, huỷ bỏ nếu không thấy hoạt động nào của luồng trong một khoảng thời gian cụ thể. Nếu idleOutputTimeout được đặt thành 0, thì sẽ không có hoạt động giám sát luồng nào diễn ra.

Tham số
timeout long: thời gian chờ tối đa (tính bằng mili giây) cho mỗi lần thử

idleOutputTimeout long: thời gian chờ tối đa tính bằng mili giây để có đầu ra trên các luồng đầu ra

retryInterval long: thời gian chờ giữa các lần thử lại lệnh

attempts int: số lần thử tối đa

command String: lệnh hệ thống được chỉ định và các đối số tuỳ chọn để thực thi

Giá trị trả về
CommandResult CommandResult chứa kết quả từ lệnh chạy

runTimedCmdSilently

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

Phương thức trợ giúp để thực thi một lệnh hệ thống và huỷ bỏ nếu lệnh đó mất nhiều thời gian hơn một khoảng thời gian đã chỉ định. Tương tự như runTimedCmd(long,String...), nhưng không ghi lại bất kỳ lỗi nào khi có ngoại lệ.

Tham số
timeout long: thời gian chờ tối đa tính bằng mili giây

command String: lệnh hệ thống được chỉ định và các đối số tuỳ chọn để thực thi

Giá trị trả về
CommandResult CommandResult chứa kết quả từ lệnh chạy

runTimedCmdSilentlyRetry

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

Phương thức trợ giúp để thực thi một lệnh hệ thống và huỷ bỏ nếu lệnh đó mất nhiều thời gian hơn một khoảng thời gian đã chỉ định. Tương tự như runTimedCmdRetry(long,long,int,String[]), nhưng không ghi lại bất kỳ lỗi nào khi có ngoại lệ.

Tham số
timeout long: thời gian chờ tối đa tính bằng mili giây

retryInterval long: thời gian chờ giữa các lần thử lại lệnh

attempts int: số lần thử tối đa

command String: lệnh hệ thống được chỉ định và các đối số tuỳ chọn để thực thi

Giá trị trả về
CommandResult CommandResult chứa kết quả từ lệnh chạy

runTimedCmdWithInput

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

Phương thức trợ giúp để thực thi một lệnh hệ thống yêu cầu đầu vào stdin và huỷ bỏ nếu lệnh đó mất nhiều thời gian hơn một khoảng thời gian đã chỉ định.

Tham số
timeout long: thời gian chờ tối đa tính bằng mili giây

input String: đầu vào stdin để truyền đến quy trình

command String: lệnh hệ thống được chỉ định và các đối số tuỳ chọn để thực thi

Giá trị trả về
CommandResult CommandResult chứa kết quả từ lệnh chạy

runTimedCmdWithInput

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

Phương thức trợ giúp để thực thi một lệnh hệ thống yêu cầu đầu vào stdin và huỷ bỏ nếu lệnh đó mất nhiều thời gian hơn một khoảng thời gian đã chỉ định.

Tham số
timeout long: thời gian chờ tối đa tính bằng mili giây

input String: đầu vào stdin để truyền đến quy trình

command List: List chứa lệnh hệ thống và các đối số (không bắt buộc) để thực thi

Giá trị trả về
CommandResult CommandResult chứa kết quả từ lệnh chạy

runTimedCmdWithInput

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

Phương thức trợ giúp để thực thi một lệnh hệ thống, huỷ nếu lệnh mất nhiều thời gian hơn một khoảng thời gian cụ thể và chuyển hướng đầu ra đến các tệp nếu được chỉ định.

Tham số
timeout long: thời gian chờ tối đa tính bằng mili giây. 0 có nghĩa là không có thời gian chờ.

input String: đầu vào stdin để truyền đến quy trình

stdoutFile File: File nơi đầu ra tiêu chuẩn sẽ được chuyển hướng. Có thể là giá trị rỗng.

stderrFile File: File nơi đầu ra lỗi sẽ được chuyển hướng. Có thể là giá trị rỗng.

command String: lệnh hệ thống được chỉ định và các đối số tuỳ chọn để thực thi

Giá trị trả về
CommandResult CommandResult chứa kết quả từ lệnh chạy

runTimedCmdWithInputRedirect

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

Phương thức trợ giúp để thực thi một lệnh hệ thống yêu cầu chuyển hướng Stdin từ một tệp và huỷ nếu lệnh này mất nhiều thời gian hơn một khoảng thời gian đã chỉ định.

Tham số
timeout long: thời gian chờ tối đa tính bằng mili giây

inputRedirect File: File để chuyển hướng làm dữ liệu đầu vào tiêu chuẩn bằng cách sử dụng ProcessBuilder.redirectInput(). Nếu là giá trị rỗng, stdin sẽ không được chuyển hướng.

command String: lệnh hệ thống được chỉ định và các đối số tuỳ chọn để thực thi

Giá trị trả về
CommandResult CommandResult chứa kết quả từ lệnh chạy

runTimedCmdWithOutputMonitor

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

Phương thức trợ giúp để thực thi một lệnh hệ thống và huỷ bỏ nếu lệnh đó mất nhiều thời gian hơn một khoảng thời gian đã chỉ định. Đồng thời giám sát các luồng đầu ra để phát hiện hoạt động, huỷ bỏ nếu không thấy hoạt động nào của luồng trong một khoảng thời gian cụ thể. Nếu idleOutputTimeout được đặt thành 0, thì sẽ không có hoạt động giám sát luồng nào diễn ra.

Tham số
timeout long: thời gian chờ tối đa tính bằng mili giây. 0 có nghĩa là không có thời gian chờ.

idleOutputTimeout long: thời gian chờ tối đa tính bằng mili giây để có đầu ra trên các luồng đầu ra

command String: lệnh hệ thống được chỉ định và các đối số tuỳ chọn để thực thi

Giá trị trả về
CommandResult CommandResult chứa kết quả từ lệnh chạy

runTimedCmdWithOutputMonitor

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

Phương thức trợ giúp để thực thi một lệnh hệ thống, huỷ nếu lệnh mất nhiều thời gian hơn một khoảng thời gian cụ thể và chuyển hướng đầu ra đến các tệp nếu được chỉ định. Khi OutputStream được cung cấp theo cách này, chúng sẽ vẫn mở ở cuối hàm.

Tham số
timeout long: thời gian chờ tối đa tính bằng mili giây. 0 có nghĩa là không có thời gian chờ.

idleOutputTimeout long: thời gian chờ tối đa tính bằng mili giây để có đầu ra trên các luồng đầu ra

stdout OutputStream: OutputStream nơi đầu ra tiêu chuẩn sẽ được chuyển hướng. Có thể là giá trị rỗng.

stderr OutputStream: OutputStream nơi đầu ra lỗi sẽ được chuyển hướng. Có thể là giá trị rỗng.

command String: lệnh hệ thống được chỉ định và các đối số tuỳ chọn để thực thi

Giá trị trả về
CommandResult CommandResult chứa kết quả từ lệnh chạy

runTimedRetry

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

Chặn và thực thi một thao tác nhiều lần cho đến khi thành công.

Tham số
opTimeout long: thời gian chờ tối đa (tính bằng mili giây) cho một lần thử thao tác

pollInterval long: thời gian chờ giữa các lần thử lại lệnh

attempts int: số lần thử tối đa

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult để thực thi

Giá trị trả về
boolean true nếu thao tác hoàn tất thành công trước khi đạt đến số lần thử.

runTimedRetryWithOutputMonitor

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

Chặn và thực thi một thao tác nhiều lần cho đến khi thành công. Đồng thời giám sát các luồng đầu ra để biết hoạt động, huỷ bỏ nếu không thấy hoạt động nào của luồng trong một khoảng thời gian cụ thể. Nếu bạn đặt idleOutputTimeout thành 0, thì sẽ không có hoạt động giám sát luồng nào diễn ra.

Tham số
opTimeout long: thời gian chờ tối đa (tính bằng mili giây) cho một lần thử thao tác

idleOutputTimeout long: thời gian chờ tối đa tính bằng mili giây để có đầu ra trên các luồng đầu ra

pollInterval long: thời gian chờ giữa các lần thử lại lệnh

attempts int: số lần thử tối đa

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult để thực thi

Giá trị trả về
boolean true nếu thao tác hoàn tất thành công trước khi đạt đến số lần thử.

runTimedWithOutputMonitor

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

Chặn và thực thi một thao tác, huỷ bỏ nếu thao tác đó mất nhiều thời gian hơn một khoảng thời gian cụ thể. Ngoài ra, hãy theo dõi các luồng đầu ra để biết hoạt động, huỷ bỏ nếu không thấy hoạt động nào của luồng trong một khoảng thời gian cụ thể. Nếu bạn đặt idleOutputTimeout thành 0, thì sẽ không có hoạt động giám sát luồng nào diễn ra.

Tham số
timeout long: thời gian chờ tối đa tính bằng mili giây

idleOutputTimeout long: thời gian chờ tối đa tính bằng mili giây để có đầu ra trên các luồng đầu ra

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult để thực thi

logErrors boolean: ghi lỗi vào nhật ký khi có ngoại lệ hay không.

Giá trị trả về
CommandStatus kết quả CommandStatus của thao tác.

setEnvVariable

public abstract void setEnvVariable (String key, 
                String value)

Đặt một biến môi trường sẽ được dùng khi chạy các lệnh hệ thống.

Tham số
key String: tên biến

value String: giá trị biến

setEnvVariablePriority

public abstract void setEnvVariablePriority (IRunUtil.EnvPriority priority)

Quyết định xem khi tạo một quy trình, việc huỷ đặt biến môi trường có mức độ ưu tiên cao hơn việc đặt biến môi trường hay không. Theo mặc định, việc huỷ đặt có mức độ ưu tiên cao hơn: tức là nếu bạn cố gắng đặt một biến có cùng tên, thì điều đó sẽ không xảy ra vì biến sẽ bị huỷ đặt. Không thể sử dụng trên phiên bản IRunUtil mặc định.

Tham số
priority IRunUtil.EnvPriority

setInterruptibleInFuture

public abstract void setInterruptibleInFuture (Thread thread, 
                long timeMs)

Đặt là có thể bị gián đoạn sau một khoảng thời gian chờ. ERROR(/CommandScheduler#shutdownHard()) để thực thi việc chấm dứt.

Tham số
thread Thread: luồng sẽ trở thành luồng có thể bị gián đoạn.

timeMs long: thời gian chờ trước khi đặt chế độ có thể bị gián đoạn.

setLinuxInterruptProcess

public abstract void setLinuxInterruptProcess (boolean interrupt)

Cho phép sử dụng lệnh gián đoạn "kill" của Linux trên quy trình đang chạy thông qua các phương thức #runTimed khi quy trình này đạt đến thời gian chờ. Không thể sử dụng trên phiên bản IRunUtil mặc định.

Tham số
interrupt boolean

setRedirectStderrToStdout

public abstract void setRedirectStderrToStdout (boolean redirect)

Đặt luồng lỗi chuẩn để chuyển hướng đến luồng đầu ra chuẩn khi chạy các lệnh hệ thống. Giá trị ban đầu là false.

Tham số
redirect boolean: giá trị mới cho việc có chuyển hướng hay không

setWorkingDir

public abstract void setWorkingDir (File dir)

Đặt thư mục làm việc cho các lệnh hệ thống.

Tham số
dir File: thư mục đang hoạt động

ngủ

public abstract void sleep (long time)

Phương thức trợ giúp để ngủ trong thời gian nhất định, bỏ qua mọi trường hợp ngoại lệ.

Tham số
time long: mili giây để ngủ. các giá trị nhỏ hơn hoặc bằng 0 sẽ bị bỏ qua

unsetEnvVariable

public abstract void unsetEnvVariable (String key)

Huỷ thiết lập một biến môi trường, để các lệnh hệ thống chạy mà không có biến môi trường này.

Tham số
key String: tên biến