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)

متد کمکی برای اجرای یک دستور سیستمی، و توقف اجرای آن در صورت طولانی شدن بیش از زمان مشخص شده.

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

متد کمکی برای اجرای یک دستور سیستمی، لغو اجرای آن در صورت طولانی شدن بیش از زمان مشخص شده، و هدایت خروجی به فایل‌ها در صورت مشخص شدن.

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

متد کمکی برای اجرای یک دستور سیستمی، و توقف اجرای آن در صورت طولانی شدن بیش از زمان مشخص شده.

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

متد کمکی برای اجرای یک دستور سیستمی، و توقف اجرای آن در صورت طولانی شدن بیش از زمان مشخص شده.

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

متد کمکی برای اجرای یک دستور سیستمی، و توقف اجرای آن در صورت طولانی شدن بیش از زمان مشخص شده.

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

متد کمکی برای اجرای یک دستور سیستمی، و توقف اجرای آن در صورت طولانی شدن بیش از زمان مشخص شده.

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)

متد کمکی برای اجرای یک دستور سیستمی، و توقف اجرای آن در صورت طولانی شدن بیش از زمان مشخص شده.

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)

اجازه می‌دهد از طریق متدهای #runTimed، هنگام رسیدن به زمان انقضا، از وقفه 'kill' در لینوکس روی فرآیند در حال اجرا استفاده شود.

abstract void setRedirectStderrToStdout (boolean redirect)

جریان خطای استاندارد را طوری تنظیم کنید که هنگام اجرای دستورات سیستم، به جریان خروجی استاندارد هدایت شود.

abstract void setWorkingDir (File dir)

دایرکتوری کاری را برای دستورات سیستم تنظیم می‌کند.

abstract void sleep (long time)

روش کمکی برای خوابیدن در زمان معین، بدون در نظر گرفتن هرگونه استثنا.

abstract void unsetEnvVariable (String key)

یک متغیر محیطی را از حالت تنظیم‌شده خارج می‌کند، بنابراین دستورات سیستم بدون این متغیر محیطی اجرا می‌شوند.

روش‌های عمومی

اجازه وقفه

public abstract void allowInterrupt (boolean allow)

وقفه‌های اجرا روی نخ فعلی را مجاز/غیرمجاز می‌کند. در صورت مجاز بودن، عملیات اجرای نخ فعلی می‌تواند از طریق نخ‌های دیگر از طریق متد interrupt(Thread, String) قطع شود.

پارامترها
allow boolean : آیا اجازه اجرای وقفه‌ها در نخ فعلی داده شود یا خیر.

وقفه

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 اگر اجرای برنامه بتواند قطع شود، درست و در غیر این صورت نادرست است.

اجرایCmdInBackground

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

یک متد جایگزین runCmdInBackground(String...) که آرگومان‌های دستور را به صورت List می‌پذیرد.

پارامترها
redirect ProcessBuilder.Redirect : Redirect که قرار است به ProcessBuilder اعمال شود.

command List : List که شامل دستور سیستمی مشخص شده و آرگومان‌های اختیاری برای اجرا است.

بازگشت‌ها
Process Process دستور اجرا شده

پرتاب‌ها
IOException اگر دستور اجرا نشد

اجرایCmdInBackground

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

متد کمکی برای اجرای یک دستور سیستمی به صورت غیرهمزمان.

بلافاصله پس از پرتاب فرمان، باز خواهد گشت.

پارامترها
redirect ProcessBuilder.Redirect : Redirect که قرار است به ProcessBuilder اعمال شود.

command String : دستور سیستمی مشخص شده و آرگومان‌های اختیاری برای اجرا

بازگشت‌ها
Process Process دستور اجرا شده

پرتاب‌ها
IOException اگر دستور اجرا نشد

اجرایCmdInBackground

public abstract Process runCmdInBackground (List<String> command)

یک متد جایگزین runCmdInBackground(String...) که آرگومان‌های دستور را به صورت List می‌پذیرد.

پارامترها
command List : List که شامل دستور سیستمی مشخص شده و آرگومان‌های اختیاری برای اجرا است.

بازگشت‌ها
Process Process دستور اجرا شده

پرتاب‌ها
IOException اگر دستور اجرا نشد

اجرایCmdInBackground

public abstract Process runCmdInBackground (String... command)

متد کمکی برای اجرای یک دستور سیستمی به صورت غیرهمزمان.

بلافاصله پس از پرتاب فرمان، باز خواهد گشت.

پارامترها
command String : دستور سیستمی مشخص شده و آرگومان‌های اختیاری برای اجرا

بازگشت‌ها
Process Process دستور اجرا شده

پرتاب‌ها
IOException اگر دستور اجرا نشد

اجرایCmdInBackground

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

اجرای دستور با OutputStream خروجی دستور را ثبت می‌کند. خروجی استاندارد (Stdout) و خروجی استاندارد (stderr) با هم ادغام می‌شوند.

پارامترها
command List : دستوری که باید اجرا شود

output OutputStream : خروجی برای ذخیره خروجی

بازگشت‌ها
Process Process دستور را اجرا می‌کند

پرتاب‌ها
استثنای java.io.IO
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 اگر عملیات قبل از انقضای maxTime با موفقیت انجام شده باشد true

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 اگر عملیات قبل از انقضای maxTime با موفقیت انجام شده باشد true

runFixedTimedRetryWithOutputMonitor

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

یک عملیات را چندین بار مسدود کرده و اجرا می‌کند تا زمانی که موفقیت‌آمیز باشد. همچنین جریان‌های خروجی را برای فعالیت نظارت می‌کند و اگر هیچ فعالیتی در جریان برای مدت زمان مشخصی مشاهده نشود، متوقف می‌شود. اگر idleOutputTimeout روی صفر تنظیم شود، هیچ نظارتی بر جریان انجام نخواهد شد.

پارامترها
opTimeout long : حداکثر زمان انتظار بر حسب میلی‌ثانیه برای یک تلاش عملیاتی

idleOutputTimeout long : حداکثر زمان انتظار بر حسب میلی‌ثانیه برای خروجی در جریان‌های خروجی

pollInterval long : زمان اولیه برای انتظار بین تلاش‌های عملیاتی

maxTime long : حداکثر زمان تقریبی کل برای ادامه‌ی تلاش برای انجام عملیات

runnable IRunUtil.IRunnableResult : IRunUtil.IRunnableResult برای اجرا

بازگشت‌ها
boolean اگر عملیات قبل از انقضای maxTime با موفقیت انجام شده باشد true

اجرا شده

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

یک عملیات را مسدود کرده و اجرا می‌کند و اگر بیش از زمان مشخص شده طول بکشد، متوقف می‌شود.

پارامترها
timeout long : حداکثر زمان انتظار بر حسب میلی‌ثانیه

runnable IRunUtil.IRunnableResult : IRunUtil.IRunnableResult برای اجرا

logErrors boolean : خطاها را در صورت وجود استثنا ثبت می‌کند یا خیر.

بازگشت‌ها
CommandStatus نتیجه‌ی CommandStatus عملیات.

اجرای زمان‌بندی‌شدهCmd

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

متد کمکی برای اجرای یک دستور سیستمی، و توقف اجرای آن در صورت طولانی شدن بیش از زمان مشخص شده.

پارامترها
timeout long : حداکثر زمان انتظار بر حسب میلی‌ثانیه. 0 به معنی بدون تایم‌اوت است.

command String : دستور سیستمی مشخص شده و آرگومان‌های اختیاری برای اجرا

بازگشت‌ها
CommandResult یک CommandResult حاوی نتیجه‌ی حاصل از اجرای دستور

اجرای زمان‌بندی‌شدهCmd

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

متد کمکی برای اجرای یک دستور سیستمی، لغو اجرای آن در صورت طولانی شدن بیش از زمان مشخص شده، و هدایت خروجی به فایل‌ها در صورت مشخص شدن. وقتی OutputStream به این روش ارائه می‌شوند، در انتهای تابع باز می‌مانند.

پارامترها
timeout long : حداکثر زمان انتظار برای timeout بر حسب میلی‌ثانیه. 0 به معنی بدون timeout است.

stdout OutputStream : OutputStream به جایی که تغییر مسیر داده می‌شود، هدایت می‌شود. می‌تواند null باشد.

stderr OutputStream : OutputStream خطا به جایی که ارسال می‌شود، هدایت می‌شود. می‌تواند null باشد.

command String : دستور سیستمی مشخص شده و آرگومان‌های اختیاری برای اجرا

بازگشت‌ها
CommandResult یک CommandResult حاوی نتیجه‌ی حاصل از اجرای دستور

runTimedCmdRetry

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

متد کمکی برای اجرای یک دستور سیستمی، و توقف اجرای آن در صورت طولانی شدن بیش از زمان مشخص شده.

پارامترها
timeout long : حداکثر زمان انتظار بر حسب میلی‌ثانیه برای هر تلاش

retryInterval long : زمان انتظار بین تکرار دستورات

attempts int : حداکثر تعداد تلاش برای امتحان کردن

command String : دستور سیستمی مشخص شده و آرگومان‌های اختیاری برای اجرا

بازگشت‌ها
CommandResult یک CommandResult حاوی نتیجه‌ی حاصل از اجرای دستور

runTimedCmdRetryWithOutputMonitor

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

متد کمکی برای اجرای یک دستور سیستمی و توقف اجرای آن در صورت طولانی شدن بیش از زمان مشخص شده. همچنین جریان‌های خروجی را برای فعالیت نظارت می‌کند و در صورت عدم مشاهده فعالیت جریان در مدت زمان مشخص شده، متوقف می‌شود. اگر idleOutputTimeout روی صفر تنظیم شود، هیچ نظارتی بر جریان انجام نخواهد شد.

پارامترها
timeout long : حداکثر زمان انتظار بر حسب میلی‌ثانیه برای هر تلاش

idleOutputTimeout long : حداکثر زمان انتظار بر حسب میلی‌ثانیه برای خروجی در جریان‌های خروجی

retryInterval long : زمان انتظار بین تکرار دستورات

attempts int : حداکثر تعداد تلاش برای امتحان کردن

command String : دستور سیستمی مشخص شده و آرگومان‌های اختیاری برای اجرا

بازگشت‌ها
CommandResult یک CommandResult حاوی نتیجه‌ی حاصل از اجرای دستور

اجرای زمان‌بندی‌شدهCmdSilently

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

متد کمکی برای اجرای یک دستور سیستمی، و توقف اجرای برنامه در صورت طولانی شدن بیش از زمان مشخص شده. مشابه runTimedCmd(long,String...) ، اما هیچ خطایی را در صورت بروز خطا ثبت نمی‌کند.

پارامترها
timeout long : حداکثر زمان انتظار بر حسب میلی‌ثانیه

command String : دستور سیستمی مشخص شده و آرگومان‌های اختیاری برای اجرا

بازگشت‌ها
CommandResult یک CommandResult حاوی نتیجه‌ی حاصل از اجرای دستور

runTimedCmdSilentlyRetry

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

متد کمکی برای اجرای یک دستور سیستمی، و توقف اجرای برنامه در صورت طولانی شدن بیش از زمان مشخص شده. مشابه runTimedCmdRetry(long,long,int,String[]) ، اما هیچ خطایی را در صورت بروز استثنا ثبت نمی‌کند.

پارامترها
timeout long : حداکثر زمان انتظار بر حسب میلی‌ثانیه

retryInterval long : زمان انتظار بین تکرار دستورات

attempts int : حداکثر تعداد تلاش برای امتحان کردن

command String : دستور سیستمی مشخص شده و آرگومان‌های اختیاری برای اجرا

بازگشت‌ها
CommandResult یک CommandResult حاوی نتیجه‌ی حاصل از اجرای دستور

اجرای زمان‌بندی‌شدهCmdبا ورودی

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

متد کمکی برای اجرای یک دستور سیستمی که نیاز به ورودی stdin دارد، و در صورت طولانی شدن اجرای آن بیش از زمان مشخص شده، متوقف می‌شود.

پارامترها
timeout long : حداکثر زمان انتظار بر حسب میلی‌ثانیه

input String : ورودی stdin که باید به پردازش ارسال شود

command String : دستور سیستمی مشخص شده و آرگومان‌های اختیاری برای اجرا

بازگشت‌ها
CommandResult یک CommandResult حاوی نتیجه‌ی حاصل از اجرای دستور

اجرای زمان‌بندی‌شدهCmdبا ورودی

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

متد کمکی برای اجرای یک دستور سیستمی که نیاز به ورودی stdin دارد، و در صورت طولانی شدن اجرای آن بیش از زمان مشخص شده، متوقف می‌شود.

پارامترها
timeout long : حداکثر زمان انتظار بر حسب میلی‌ثانیه

input String : ورودی stdin که باید به پردازش ارسال شود

command List : List شامل دستور سیستم و آرگومان‌های اختیاری برای اجرا

بازگشت‌ها
CommandResult یک CommandResult حاوی نتیجه‌ی حاصل از اجرای دستور

اجرای زمان‌بندی‌شدهCmdبا ورودی

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

متد کمکی برای اجرای یک دستور سیستمی، لغو اجرای آن در صورت طولانی شدن بیش از زمان مشخص شده، و هدایت خروجی به فایل‌ها در صورت مشخص شدن.

پارامترها
timeout long : حداکثر زمان انتظار برای timeout بر حسب میلی‌ثانیه. 0 به معنی بدون timeout است.

input String : ورودی stdin که باید به پردازش ارسال شود

stdoutFile File : File که خروجی std به آن هدایت می‌شود. می‌تواند null باشد.

stderrFile File : File که خروجی خطا به آن هدایت می‌شود. می‌تواند تهی (null) باشد.

command String : دستور سیستمی مشخص شده و آرگومان‌های اختیاری برای اجرا

بازگشت‌ها
CommandResult یک CommandResult حاوی نتیجه‌ی حاصل از اجرای دستور

runTimedCmdWithInputRedirect

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

متد کمکی برای اجرای یک دستور سیستمی که نیاز به تغییر مسیر Stdin از یک فایل دارد، و در صورت طولانی شدن بیش از زمان مشخص شده، متوقف می‌شود.

پارامترها
timeout long : حداکثر زمان انتظار بر حسب میلی‌ثانیه

inputRedirect File : File که قرار است با استفاده از ProcessBuilder.redirectInput() به عنوان ورودی استاندارد تغییر مسیر داده شود. اگر مقدار آن تهی باشد، stdin تغییر مسیر نخواهد داد.

command String : دستور سیستمی مشخص شده و آرگومان‌های اختیاری برای اجرا

بازگشت‌ها
CommandResult یک CommandResult حاوی نتیجه‌ی حاصل از اجرای دستور

اجرای زمان‌بندی‌شدهCmdWithOutputMonitor

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

متد کمکی برای اجرای یک دستور سیستمی و توقف اجرای آن در صورت طولانی شدن بیش از زمان مشخص شده. همچنین جریان‌های خروجی را برای فعالیت نظارت می‌کند و در صورت عدم مشاهده فعالیت جریان در مدت زمان مشخص شده، متوقف می‌شود. اگر idleOutputTimeout روی صفر تنظیم شود، هیچ نظارتی بر جریان انجام نخواهد شد.

پارامترها
timeout long : حداکثر زمان انتظار بر حسب میلی‌ثانیه. 0 به معنی بدون تایم‌اوت است.

idleOutputTimeout long : حداکثر زمان انتظار بر حسب میلی‌ثانیه برای خروجی در جریان‌های خروجی

command String : دستور سیستمی مشخص شده و آرگومان‌های اختیاری برای اجرا

بازگشت‌ها
CommandResult یک CommandResult حاوی نتیجه‌ی حاصل از اجرای دستور

اجرای زمان‌بندی‌شدهCmdWithOutputMonitor

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

متد کمکی برای اجرای یک دستور سیستمی، لغو اجرای آن در صورت طولانی شدن بیش از زمان مشخص شده، و هدایت خروجی به فایل‌ها در صورت مشخص شدن. وقتی OutputStream به این روش ارائه می‌شوند، در انتهای تابع باز می‌مانند.

پارامترها
timeout long : حداکثر زمان انتظار برای timeout بر حسب میلی‌ثانیه. 0 به معنی بدون timeout است.

idleOutputTimeout long : حداکثر زمان انتظار بر حسب میلی‌ثانیه برای خروجی در جریان‌های خروجی

stdout OutputStream : OutputStream به جایی که تغییر مسیر داده می‌شود، هدایت می‌شود. می‌تواند null باشد.

stderr OutputStream : OutputStream خطا به جایی که ارسال می‌شود، هدایت می‌شود. می‌تواند null باشد.

command String : دستور سیستمی مشخص شده و آرگومان‌های اختیاری برای اجرا

بازگشت‌ها
CommandResult یک CommandResult حاوی نتیجه‌ی حاصل از اجرای دستور

اجرازمان‌بندی‌شدهدوبارهامتحان

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

یک عملیات را چندین بار مسدود و اجرا می‌کند تا زمانی که با موفقیت انجام شود.

پارامترها
opTimeout long : حداکثر زمان انتظار بر حسب میلی‌ثانیه برای یک تلاش عملیاتی

pollInterval long : زمان انتظار بین تکرار دستورات

attempts int : حداکثر تعداد تلاش برای امتحان کردن

runnable IRunUtil.IRunnableResult : IRunUtil.IRunnableResult برای اجرا

بازگشت‌ها
boolean اگر عملیات قبل از رسیدن به حد نهایی با موفقیت انجام شده باشد، true .

اجرای زمان‌بندی‌شده‌ی تلاش مجدد با خروجی مانیتور

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

یک عملیات را چندین بار مسدود کرده و اجرا می‌کند تا زمانی که موفقیت‌آمیز باشد. همچنین جریان‌های خروجی را برای فعالیت نظارت می‌کند و اگر هیچ فعالیتی در جریان برای مدت زمان مشخصی مشاهده نشود، متوقف می‌شود. اگر idleOutputTimeout روی صفر تنظیم شود، هیچ نظارتی بر جریان انجام نخواهد شد.

پارامترها
opTimeout long : حداکثر زمان انتظار بر حسب میلی‌ثانیه برای یک تلاش عملیاتی

idleOutputTimeout long : حداکثر زمان انتظار بر حسب میلی‌ثانیه برای خروجی در جریان‌های خروجی

pollInterval long : زمان انتظار بین تکرار دستورات

attempts int : حداکثر تعداد تلاش برای امتحان کردن

runnable IRunUtil.IRunnableResult : IRunUtil.IRunnableResult برای اجرا

بازگشت‌ها
boolean اگر عملیات قبل از رسیدن به حد نهایی با موفقیت انجام شده باشد، true .

مانیتور خروجی زمان‌بندی‌شده‌ی اجرا

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

یک عملیات را مسدود کرده و اجرا می‌کند و اگر بیش از زمان مشخصی طول بکشد، متوقف می‌شود. همچنین جریان‌های خروجی را برای فعالیت نظارت می‌کند و اگر هیچ فعالیتی در جریان برای مدت زمان مشخصی مشاهده نشود، متوقف می‌شود. اگر idleOutputTimeout روی صفر تنظیم شود، هیچ نظارتی بر جریان انجام نخواهد شد.

پارامترها
timeout long : حداکثر زمان انتظار بر حسب میلی‌ثانیه

idleOutputTimeout long : حداکثر زمان انتظار بر حسب میلی‌ثانیه برای خروجی در جریان‌های خروجی

runnable IRunUtil.IRunnableResult : IRunUtil.IRunnableResult برای اجرا

logErrors boolean : خطاها را در صورت وجود استثنا ثبت می‌کند یا خیر.

بازگشت‌ها
CommandStatus نتیجه‌ی CommandStatus عملیات.

متغیر setEnv

public abstract void setEnvVariable (String key, 
                String value)

یک متغیر محیطی را برای استفاده هنگام اجرای دستورات سیستم تنظیم می‌کند.

پارامترها
key String : نام متغیر

value String : مقدار متغیر

همچنین ببینید:

اولویت متغیرها را با استفاده از setEnv مشخص کنید

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 : زمان انتظار قبل از تنظیم interruptible.

setLinuxInterruptProcess

public abstract void setLinuxInterruptProcess (boolean interrupt)

اجازه می‌دهد از طریق متدهای #runTimed، هنگام رسیدن فرآیند به زمان انقضا، از وقفه 'kill' در لینوکس استفاده شود. نمی‌توان از آن در نمونه پیش‌فرض IRunUtil استفاده کرد.

پارامترها
interrupt boolean

setRedirectStderrToStdout

public abstract void setRedirectStderrToStdout (boolean redirect)

جریان خطای استاندارد را طوری تنظیم کنید که هنگام اجرای دستورات سیستم، به جریان خروجی استاندارد هدایت شود. مقدار اولیه false است.

پارامترها
redirect boolean : مقدار جدیدی برای تعیین اینکه آیا ریدایرکت انجام شود یا خیر.

همچنین ببینید:

تنظیم دایرکتوری کاری

public abstract void setWorkingDir (File dir)

دایرکتوری کاری را برای دستورات سیستم تنظیم می‌کند.

پارامترها
dir File : دایرکتوری کاری

همچنین ببینید:

خواب

public abstract void sleep (long time)

روش کمکی برای خوابیدن در زمان معین، بدون در نظر گرفتن هرگونه استثنا.

پارامترها
time long : ms برای خواب. مقادیر کمتر یا مساوی 0 نادیده گرفته می‌شوند.

متغیر unsetEnv

public abstract void unsetEnvVariable (String key)

یک متغیر محیطی را از حالت تنظیم‌شده خارج می‌کند، بنابراین دستورات سیستم بدون این متغیر محیطی اجرا می‌شوند.

پارامترها
key String : نام متغیر

همچنین ببینید: