ChạyUtil

public class RunUtil
extends Object implements IRunUtil

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


Một tập hợp các phương thức trợ giúp để thực thi các hoạt động.

Bản tóm tắt

Lĩnh vực

public static final String INHERITIO_PREFIX

public static final String RUNNABLE_NOTIFIER_NAME

nhà thầu công cộng

RunUtil ()

Tạo một đối tượng RunUtil mới để sử dụng.

Phương thức công khai

void allowInterrupt (boolean allow)

Cho phép/không cho phép chạy ngắt trên luồng hiện tại.

static IRunUtil getDefault ()

Nhận tham chiếu đến đối tượng RunUtil mặc định.

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

Ngắt các hoạt động chạy đang diễn ra/sắp tới trên chuỗi đã cho.

void interrupt (Thread thread, String message)

Ngắt các hoạt động chạy đang diễn ra/sắp tới trên chuỗi đã cho.

boolean isInterruptAllowed ()

Đưa ra trạng thái ngắt của RunUtil.

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

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

Process runCmdInBackground ( command) runCmdInBackground ( command)

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

Process runCmdInBackground ( command, OutputStream output) runCmdInBackground ( command, OutputStream output)

Chạy lệnh với một ERROR(/OutputStream) ghi lại đầu ra của lệnh.

Process runCmdInBackground (String... command)

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

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

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

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

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

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

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

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

Chặn và thực thi một thao tác, hủy bỏ nếu thao tác đó mất nhiều thời gian hơn một khoảng thời gian đã chỉ định.

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

Phương thức trợ giúp để thực thi lệnh hệ thống, hủy bỏ nếu mất nhiều thời gian hơn một thời gian đã chỉ định và chuyển hướng đầu ra sang tệp nếu được chỉ định.

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

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

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à hủy bỏ nếu nó mất nhiều thời gian hơn một thời gian đã chỉ định.

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

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

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à hủy bỏ nếu nó mất nhiều thời gian hơn một thời gian đã chỉ định.

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

Phương thức trợ giúp để thực thi lệnh hệ thống, hủy bỏ nếu mất nhiều thời gian hơn một thời gian đã chỉ định và chuyển hướng đầu ra sang tệp nếu được chỉ định.

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

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

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

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

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

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

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

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

void setEnvVariable (String name, String value)

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

void setEnvVariablePriority ( IRunUtil.EnvPriority priority)

Quyết định xem khi tạo một quy trình, việc hủy đặt biến môi trường có được ưu tiên cao hơn so với đặt chúng hay không.

void setInterruptibleInFuture (Thread thread, long timeMs)

Đặt là gián đoạn sau một thời gian chờ đợi.

void setLinuxInterruptProcess (boolean interrupt)

Cho phép sử dụng gián đoạn 'tiêu diệt' linux đối với quá trình chạy qua các phương thức #runTimed khi hết thời gian chờ.

void setRedirectStderrToStdout (boolean redirect)

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

void setWorkingDir (File dir)

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

void sleep (long time)

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

void unsetEnvVariable (String key)

Hủy đặt 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. Các biến môi trường có thể kế thừa từ tiến trình cha, vì vậy chúng ta cần xóa biến môi trường khỏi ProcessBuilder.environment()

Lĩnh vực

INHERITIO_PREFIX

public static final String INHERITIO_PREFIX

RUNNABLE_NOTIFIER_NAME

public static final String RUNNABLE_NOTIFIER_NAME

nhà thầu công cộng

ChạyUtil

public RunUtil ()

Tạo một đối tượng RunUtil mới để sử dụng.

Phương thức công khai

cho phép ngắt

public void allowInterrupt (boolean allow)

Cho phép/không cho phép chạy ngắt trên luồng hiện tại. Nếu được phép, các hoạt động 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) .

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

getDefault

public static IRunUtil getDefault ()

Nhận tham chiếu đến đối tượng RunUtil mặc định.

Điều này hữu ích cho những người gọi muốn sử dụng IRunUtil mà không cần tùy chỉnh. Chúng tôi khuyên những người gọi cần một phiên bản IRunUtil tùy chỉnh (tức là cần gọi setEnvVariable(String, String) hoặc setWorkingDir(File) tạo bản sao của riêng họ.

trả lại
IRunUtil

ngắt

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

Ngắt các hoạt động chạy đang diễn ra/sắp tới trên chuỗi đã cho. Các hoạt động chạy trên luồng đã cho sẽ ném RunInterruptedException .

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

errorId ErrorIdentifier : Đại diện cho nguyên nhân của sự gián đoạn khi đã biết.

ngắt

public void interrupt (Thread thread, 
                String message)

Ngắt các hoạt động chạy đang diễn ra/sắp tới trên chuỗi đã cho. Các hoạt động chạy trên luồng đã cho sẽ ném RunInterruptedException .

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

isInterruptAllowed

public boolean isInterruptAllowed ()

Đưa ra trạng thái ngắt của RunUtil.

trả lại
boolean đúng nếu Chạy có thể bị gián đoạn, sai nếu không.

runCmdInNền

public Process runCmdInBackground (Redirect redirect, 
                 command)

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

Thông số
redirect Redirect : ERROR(/Redirect) để áp dụng cho ProcessBuilder .

command : ERROR(/List) chứa lệnh hệ thống được chỉ định và các đối số tùy chọn cho exec

trả lại
Process Process thực hiện lệnh

runCmdInNền

public Process runCmdInBackground ( command)

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

Thông số
command : ERROR(/List) chứa lệnh hệ thống được chỉ định và các đối số tùy chọn cho exec

trả lại
Process Process thực hiện lệnh

runCmdInNền

public Process runCmdInBackground ( command, 
                OutputStream output)

Chạy lệnh với một ERROR(/OutputStream) ghi lại đầu ra của lệnh. Thiết bị xuất chuẩn và thiết bị xuất chuẩn được hợp nhất với nhau.

Thông số
command : lệnh chạy

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

trả lại
Process Process chạy lệnh

runCmdInNền

public Process runCmdInBackground (String... command)

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

Sẽ quay lại ngay sau khi tung ra lệnh.

Thông số
command String : lệnh hệ thống được chỉ định và các đối số tùy chọn cho exec

trả lại
Process Process thực hiện lệnh

runCmdInNền

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

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

Sẽ quay lại ngay sau khi tung ra lệnh.

Thông số
redirect Redirect : ERROR(/Redirect) để áp dụng cho ProcessBuilder .

command String : lệnh hệ thống được chỉ định và các đối số tùy chọn cho exec

trả lại
Process Process thực hiện lệnh

runEscallingTimedThử lại

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

Chặn và thực hiện 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ử hoạt động theo cấp số nhân. Điều này nhằm mục đích sử dụng khi thực hiện một thao tác chẳng hạn như bỏ phiếu cho máy chủ, để cho máy chủ có thời gian phục hồi trong trường hợp máy chủ tạm thời ngừng hoạt động.

Thông 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 ban đầu để chờ đợi giữa các lần thử hoạt động

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

maxTime long : tổng thời gian tối đa gần đúng để tiếp tục thử hoạt động

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

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

runFixedTimedThử lại

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

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

Thông 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 ban đầu để chờ đợi giữa các lần thử hoạt động

maxTime long : tổng thời gian tối đa gần đúng để tiếp tục thử hoạt động

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

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

thời gian chạy

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

Chặn và thực thi một thao tác, hủy bỏ nếu thao tác đó mất nhiều thời gian hơn một khoảng thời gian đã chỉ định.

Thông số
timeout long : thời gian chờ tối đa tính bằng ms

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

logErrors boolean : ghi lỗi ngoại lệ hay không.

trả lại
CommandStatus kết quả CommandStatus của hoạt động.

runTimedCmd

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

Phương thức trợ giúp để thực thi lệnh hệ thống, hủy bỏ nếu mất nhiều thời gian hơn một thời gian đã chỉ định và chuyển hướng đầu ra sang tệp nếu được chỉ định. Khi ERROR(/OutputStream) được cung cấp theo cách này, chúng sẽ bị bỏ ngỏ ở cuối hàm.

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

stdout OutputStream : ERROR(/OutputStream) trong đó đầu ra tiêu chuẩn sẽ được chuyển hướng. Có thể là vô giá trị.

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

command String : lệnh hệ thống được chỉ định và các đối số tùy chọn cho exec

trả lại
CommandResult một CommandResult chứa kết quả từ lệnh chạy

runTimedCmd

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

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

Thông số
timeout long : thời gian chờ tối đa tính bằng ms. 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ố tùy chọn cho exec

trả lại
CommandResult một CommandResult chứa kết quả từ lệnh chạy

runTimedCmdThử lại

public 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à hủy bỏ nếu nó mất nhiều thời gian hơn một thời gian đã chỉ định.

Thông 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ố tùy chọn cho exec

trả lại
CommandResult một CommandResult chứa kết quả từ lệnh chạy

runTimedCmdÂm thầm

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

Phương thức trợ giúp để thực thi một lệnh hệ thống và hủy bỏ nếu nó mất nhiều thời gian hơn một 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 ngoại lệ.

Thông số
timeout long : thời gian chờ tối đa tính bằng ms

command String : lệnh hệ thống được chỉ định và các đối số tùy chọn cho exec

trả lại
CommandResult một CommandResult chứa kết quả từ lệnh chạy

runTimedCmdSilentlyThử lại

public 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à hủy bỏ nếu nó mất nhiều thời gian hơn một 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 về ngoại lệ.

Thông số
timeout long : thời gian chờ tối đa tính bằng ms

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ố tùy chọn cho exec

trả lại
CommandResult một CommandResult chứa kết quả từ lệnh chạy

runTimedCmdWithInput

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

Phương thức trợ giúp để thực thi lệnh hệ thống, hủy bỏ nếu mất nhiều thời gian hơn một thời gian đã chỉ định và chuyển hướng đầu ra sang tệp nếu được chỉ định.

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

input String : đầu vào stdin để chuyển đến quá trình

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

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

command String : lệnh hệ thống được chỉ định và các đối số tùy chọn cho exec

trả lại
CommandResult một CommandResult chứa kết quả từ lệnh chạy

runTimedCmdWithInput

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

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

Thông số
timeout long : thời gian chờ tối đa tính bằng ms

input String : đầu vào stdin để chuyển đến quá trình

command String : lệnh hệ thống được chỉ định và các đối số tùy chọn cho exec

trả lại
CommandResult một CommandResult chứa kết quả từ lệnh chạy

runTimedCmdWithInput

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

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

Thông số
timeout long : thời gian chờ tối đa tính bằng ms

input String : đầu vào stdin để chuyển đến quá trình

command : ERROR(/List) chứa lệnh hệ thống và các đối số tùy chọn cho exec

trả lại
CommandResult một CommandResult chứa kết quả từ lệnh chạy

runTimedCmdWithInputRedirect

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

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

Thông số
timeout long : thời gian chờ tối đa tính bằng ms

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

command String : lệnh hệ thống được chỉ định và các đối số tùy chọn cho exec

trả lại
CommandResult một CommandResult chứa kết quả từ lệnh chạy

runTimedThử lại

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

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

Thông 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

trả lại
boolean true nếu hoạt động hoàn thành thành công trước khi đạt được nỗ lực.

setEnvVariable

public void setEnvVariable (String name, 
                String value)

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

Thông số
name String : tên biến

value String : giá trị biến

setEnvVariablePriority

public void setEnvVariablePriority (IRunUtil.EnvPriority priority)

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

Thông số
priority IRunUtil.EnvPriority

setInterruptibleInFuture

public void setInterruptibleInFuture (Thread thread, 
                long timeMs)

Đặt là gián đoạn sau một thời gian chờ đợi. ERROR(/CommandScheduler#shutdownHard()) để thực thi, cuối cùng chúng tôi sẽ chấm dứt.

Thông số
thread Thread : chủ đề sẽ trở nên gián đoạn.

timeMs long : thời gian đợi trước khi cài đặt có thể ngắt.

setLinuxInterruptProcess

public void setLinuxInterruptProcess (boolean interrupt)

Cho phép sử dụng gián đoạn 'tiêu diệt' linux đối với quá trình chạy qua các phương thức #runTimed khi hết thời gian chờ. Không thể sử dụng trên phiên bản IRunUtil mặc định.

Thông số
interrupt boolean

setRedirectStderrToStdout

public void setRedirectStderrToStdout (boolean redirect)

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

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

setWorkingDir

public void setWorkingDir (File dir)

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

Thông số
dir File : thư mục làm việc

ngủ

public void sleep (long time)

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

Thông số
time long : ms đi ngủ. các giá trị nhỏ hơn hoặc bằng 0 sẽ bị bỏ qua

bỏ đặtEnvVariable

public void unsetEnvVariable (String key)

Hủy đặt 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. Các biến môi trường có thể kế thừa từ tiến trình cha, vì vậy chúng ta cần xóa biến môi trường khỏi ProcessBuilder.environment()

Thông số
key String : tên biến