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(Redirect redirect, command)

طريقة runCmdInBackground(String) بديلة تقبل وسيطات الأمر بتنسيق ERROR(/List)

abstract Process runCmdInBackground( command)

طريقة runCmdInBackground(String) بديلة تقبل وسيطات الأمر بتنسيق ERROR(/List)

abstract Process runCmdInBackground( command, OutputStream output)

يؤدي تنفيذ الأمر مع ERROR(/OutputStream) إلى تسجيل ناتج الأمر.

abstract Process runCmdInBackground(String... command)

طريقة مساعدة لتنفيذ أمر نظام بشكل غير متزامن

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

طريقة مساعدة لتنفيذ أمر نظام بشكل غير متزامن

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, OutputStream stdout, OutputStream stderr, String... command)

طريقة مساعدة لتنفيذ أمر نظام، وإيقاف التنفيذ إذا استغرق الأمر وقتًا أطول من الوقت المحدّد، وإعادة توجيه الإخراج إلى الملفات إذا تم تحديدها

abstract CommandResult runTimedCmd(long timeout, 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, File stdoutFile, File stderrFile, String... command)

طريقة مساعدة لتنفيذ أمر نظام، وإيقاف التنفيذ إذا استغرق الأمر وقتًا أطول من الوقت المحدّد، وإعادة توجيه الإخراج إلى الملفات إذا تم تحديدها

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

طريقة مساعدة لتنفيذ أمر نظام يتطلب إدخال stdin، وإيقاف التنفيذ إذا كان يستغرق وقتًا أطول من الوقت المحدّد

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

طريقة مساعدة لتنفيذ أمر نظام يتطلب إدخال stdin، وإيقاف التنفيذ إذا كان يستغرق وقتًا أطول من الوقت المحدّد

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

طريقة مساعدة لتنفيذ أمر نظام يتطلّب إعادة توجيه Stdin من ملف، وإيقاف التنفيذ إذا استغرق الأمر وقتًا أطول من الوقت المحدّد

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

طريقة مساعدة لتنفيذ أمر نظام، وإيقاف التنفيذ إذا استغرق الأمر وقتًا أطول من الوقت المحدّد، وإعادة توجيه الإخراج إلى الملفات إذا تم تحديدها

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

طريقة مساعدة لتنفيذ طلب نظام وإيقافه إذا استغرق وقتًا أطول من وقت محدّد

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

طريقة مساعدة لتنفيذ أمر نظام باستخدام التخزين المؤقت

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

حظر عملية وتنفيذها عدة مرات إلى أن تنجح

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

حظر عملية وتنفيذها عدة مرات إلى أن تنجح

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

حظر عملية وتنفيذها، وإلغاء العملية إذا استغرقت وقتًا أطول من الوقت المحدّد

abstract void setEnvVariable(String key, String value)

يُستخدَم لضبط متغيّر بيئة عند تنفيذ أوامر النظام.

abstract void setEnvVariablePriority(IRunUtil.EnvPriority priority)

حدِّد ما إذا كان إلغاء ضبط متغيّر البيئة له أولوية أعلى من ضبطه عند إنشاء عملية أم لا.

abstract void setInterruptibleInFuture(Thread thread, long timeMs)

يتم ضبطها على أنّها قابلة للمقاطعة بعد بعض الوقت.

abstract void setLinuxInterruptProcess(boolean interrupt)

السماح باستخدام الأمر kill في نظام التشغيل Linux لإيقاف العملية التي يتم تشغيلها من خلال طرق #runTimed عندما تبلغ مهلة زمنية

abstract void setRedirectStderrToStdout(boolean redirect)

اضبط بث الأخطاء العادي لإعادة التوجيه إلى بث المخرجات العادي عند تشغيل أوامر النظام.

abstract void setWorkingDir(File dir)

لضبط دليل العمل لأوامر النظام

abstract void sleep(long time)

طريقة مساعدة للنوم لفترة زمنية معيّنة، مع تجاهل أي استثناءات

abstract void unsetEnvVariable(String key)

تؤدي هذه الوظيفة إلى إلغاء ضبط متغيّر بيئة، وبالتالي يتم تشغيل أوامر النظام بدون متغيّر البيئة هذا.

abstract void uploadCache(ICacheClient cacheClient, ExecutableActionResult actionResult)

تُحمِّل آخر ExecutableActionResult تم تشغيله باستخدام cacheClient.

الطرق العامة

allowInterrupt

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 صحيح إذا كان من الممكن إيقاف الإجراء، وخطأ في الحالات الأخرى.

runCmdInBackground

public abstract Process runCmdInBackground (Redirect redirect, 
                 command)

طريقة runCmdInBackground(String) بديلة تقبل وسيطات الأمر بتنسيق ERROR(/List)

المعلمات
redirect Redirect: ERROR(/Redirect) التي سيتم تطبيقها على ProcessBuilder

command : العنصر ERROR(/List) الذي يحتوي على أمر نظام محدّد ومَعلمات اختيارية للتنفيذ

المرتجعات
Process Process الأمر الذي تم تنفيذه

عمليات الرمي
إذا تعذّر تنفيذ الأمر

runCmdInBackground

public abstract Process runCmdInBackground ( command)

طريقة runCmdInBackground(String) بديلة تقبل وسيطات الأمر بتنسيق ERROR(/List)

المعلمات
command : العنصر ERROR(/List) الذي يحتوي على أمر نظام محدّد ومَعلمات اختيارية للتنفيذ

المرتجعات
Process Process الأمر الذي تم تنفيذه

عمليات الرمي
إذا تعذّر تنفيذ الأمر

runCmdInBackground

public abstract Process runCmdInBackground ( command, 
                OutputStream output)

يؤدي تنفيذ الأمر مع ERROR(/OutputStream) إلى تسجيل ناتج الأمر. يتم دمج Stdout وstderr معًا.

المعلمات
command : الأمر المطلوب تنفيذه

output OutputStream: OutputStream لحفظ الإخراج

المرتجعات
Process Process الذي ينفِّذ الأمر

عمليات الرمي
IOException

runCmdInBackground

public abstract Process runCmdInBackground (String... command)

طريقة مساعدة لتنفيذ أمر نظام بشكل غير متزامن

سيظهر الردّ على الفور بعد إطلاق الأمر.

المعلمات
command String: أمر النظام المحدّد والوسيطات الاختيارية للتنفيذ

المرتجعات
Process Process الأمر الذي تم تنفيذه

عمليات الرمي
إذا تعذّر تنفيذ الأمر

runCmdInBackground

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

طريقة مساعدة لتنفيذ أمر نظام بشكل غير متزامن

سيظهر الردّ على الفور بعد إطلاق الأمر.

المعلمات
redirect Redirect: ERROR(/Redirect) التي سيتم تطبيقها على ProcessBuilder

command String: أمر النظام المحدّد والوسيطات الاختيارية للتنفيذ

المرتجعات
Process Process الأمر الذي تم تنفيذه

عمليات الرمي
إذا تعذّر تنفيذ الأمر

runEscalatingTimedRetry

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

حظر عملية وتنفيذها عدة مرات إلى أن تنجح

زيادة وقت الانتظار بين محاولات تنفيذ العمليات بشكلٍ كبير يُقصد استخدام هذه القيمة عند تنفيذ عملية مثل الاستعلام عن خادم، لمنحه الوقت لاستعادة الاتصال في حال تعطُّله مؤقتًا.

المعلمات
opTimeout long: الحد الأقصى للانتظار بالكيلومتر لكل محاولة عملية واحدة

initialPollInterval long: الوقت الأولي للانتظار بين محاولات تنفيذ العملية

maxPollInterval long: الحد الأقصى لوقت الانتظار بين محاولات تنفيذ العملية

maxTime long: إجمالي الحد الأقصى التقريبي لمواصلة محاولة تنفيذ العملية

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult للتنفيذ

المرتجعات
boolean true إذا اكتملت العملية بنجاح قبل انتهاء صلاحية maxTime

runFixedTimedRetry

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

حظر عملية وتنفيذها عدة مرات إلى أن تنجح

المعلمات
opTimeout long: الحد الأقصى للانتظار بالكيلومتر لكل محاولة عملية واحدة

pollInterval long: الوقت الأولي للانتظار بين محاولات تنفيذ العملية

maxTime long: إجمالي الحد الأقصى التقريبي لمواصلة محاولة تنفيذ العملية

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult للتنفيذ

المرتجعات
boolean true إذا اكتملت العملية بنجاح قبل انتهاء صلاحية maxTime

runFixedTimedRetryWithOutputMonitor

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

حظر عملية وتنفيذها عدة مرات إلى أن تنجح تتتبّع أيضًا عمليات بث الإخراج بحثًا عن أي نشاط، وتُوقفها إذا لم يتم رصد أي نشاط بث خلال فترة زمنية محدّدة. في حال ضبط idleOutputTimeout على صفر، لن تتم مراقبة البث.

المعلمات
opTimeout long: الحد الأقصى للانتظار بالكيلومتر لكل محاولة عملية واحدة

idleOutputTimeout long: الحد الأقصى للوقت الذي يجب الانتظاره بالمللي ثانية للحصول على الإخراج في مصادر الإخراج

pollInterval long: الوقت الأولي للانتظار بين محاولات تنفيذ العملية

maxTime long: إجمالي الحد الأقصى التقريبي لمواصلة محاولة تنفيذ العملية

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult للتنفيذ

المرتجعات
boolean true إذا اكتملت العملية بنجاح قبل انتهاء صلاحية maxTime

runTimed

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

حظر عملية وتنفيذها، وإيقاف التنفيذ إذا استغرقت العملية وقتًا أطول من الوقت المحدّد

المعلمات
timeout long: الحد الأقصى لوقت الانتظار بالكيلومتر

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult للتنفيذ

logErrors boolean: تسجيل الأخطاء عند حدوث استثناء أم لا

المرتجعات
CommandStatus CommandStatus نتيجة العملية

runTimedCmd

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

طريقة مساعدة لتنفيذ أمر نظام، وإيقاف التنفيذ إذا استغرق الأمر وقتًا أطول من الوقت المحدّد، وإعادة توجيه الإخراج إلى الملفات إذا تم تحديدها عند تقديم ERROR(/OutputStream) بهذه الطريقة، سيتم تركها مفتوحة في نهاية الدالة.

المعلمات
timeout long: المهلة هي الحد الأقصى للوقت الذي يجب الانتظاره بالملي ثانية. ويعني القيمة 0 عدم وجود مهلة.

stdout OutputStream: ERROR(/OutputStream) حيث سيتم إعادة توجيه الإخراج العادي. يمكن أن تكون فارغة.

stderr OutputStream: ERROR(/OutputStream) حيث سيتم إعادة توجيه ناتج الخطأ. يمكن أن تكون فارغة.

command String: أمر النظام المحدّد والوسيطات الاختيارية للتنفيذ

المرتجعات
CommandResult CommandResult يحتوي على نتيجة من تنفيذ الأمر

runTimedCmd

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

طريقة مساعدة لتنفيذ طلب نظام وإيقافه إذا استغرق وقتًا أطول من وقت محدّد

المعلمات
timeout long: الحد الأقصى للوقت الذي يجب الانتظاره بالكيلومتر. القيمة 0 تعني عدم وجود مهلة.

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 يحتوي على نتيجة من تنفيذ الأمر

runTimedCmdSilently

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 يحتوي على نتيجة من تنفيذ الأمر

runTimedCmdWithInput

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

طريقة مساعدة لتنفيذ أمر نظام، وإيقاف التنفيذ إذا استغرق الأمر وقتًا أطول من الوقت المحدّد، وإعادة توجيه الإخراج إلى الملفات إذا تم تحديدها

المعلمات
timeout long: المهلة هي الحد الأقصى للوقت الذي يجب الانتظاره بالملي ثانية. ويعني القيمة 0 عدم وجود مهلة.

input String: إدخال stdin المطلوب تمريره إلى العملية

stdoutFile File: ERROR(/File) حيث سيتم إعادة توجيه الإخراج العادي. يمكن أن تكون فارغة.

stderrFile File: ERROR(/File) حيث سيتم إعادة توجيه ناتج الخطأ. يمكن أن تكون فارغة.

command String: أمر النظام المحدّد والوسيطات الاختيارية للتنفيذ

المرتجعات
CommandResult CommandResult يحتوي على نتيجة من تنفيذ الأمر

runTimedCmdWithInput

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

طريقة مساعدة لتنفيذ أمر نظام يتطلب إدخال stdin، وإيقاف التنفيذ إذا كان يستغرق وقتًا أطول من الوقت المحدّد

المعلمات
timeout long: الحد الأقصى لوقت الانتظار بالكيلومتر

input String: إدخال stdin المطلوب تمريره إلى العملية

command String: أمر النظام المحدّد والوسيطات الاختيارية للتنفيذ

المرتجعات
CommandResult CommandResult يحتوي على نتيجة من تنفيذ الأمر

runTimedCmdWithInput

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

طريقة مساعدة لتنفيذ أمر نظام يتطلب إدخال stdin، وإيقاف التنفيذ إذا كان يستغرق وقتًا أطول من الوقت المحدّد

المعلمات
timeout long: الحد الأقصى لوقت الانتظار بالكيلومتر

input String: إدخال stdin المطلوب تمريره إلى العملية

command : ERROR(/List) يحتوي على أمر النظام وسيطات اختيارية لتنفيذ

المرتجعات
CommandResult CommandResult يحتوي على نتيجة من تنفيذ الأمر

runTimedCmdWithInputRedirect

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

طريقة مساعدة لتنفيذ أمر نظام يتطلّب إعادة توجيه Stdin من ملف، وإيقاف التنفيذ إذا استغرق الأمر وقتًا أطول من الوقت المحدّد

المعلمات
timeout long: الحد الأقصى لوقت الانتظار بالكيلومتر

inputRedirect File: ERROR(/File) لإعادة التوجيه كإدخال عادي باستخدام ProcessBuilder.redirectInput() إذا كان القيمة فارغة، لن تتم إعادة توجيه stdin.

command String: أمر النظام المحدّد والوسيطات الاختيارية للتنفيذ

المرتجعات
CommandResult CommandResult يحتوي على نتيجة من تنفيذ الأمر

runTimedCmdWithOutputMonitor

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

طريقة مساعدة لتنفيذ أمر نظام، وإيقاف التنفيذ إذا استغرق الأمر وقتًا أطول من الوقت المحدّد، وإعادة توجيه الإخراج إلى الملفات إذا تم تحديدها عند تقديم ERROR(/OutputStream) بهذه الطريقة، سيتم تركها مفتوحة في نهاية الدالة.

المعلمات
timeout long: المهلة هي الحد الأقصى للوقت الذي يجب الانتظاره بالملي ثانية. ويعني القيمة 0 عدم وجود مهلة.

idleOutputTimeout long: الحد الأقصى للوقت الذي يجب الانتظاره بالمللي ثانية للحصول على الإخراج في مصادر الإخراج

stdout OutputStream: ERROR(/OutputStream) حيث سيتم إعادة توجيه الإخراج العادي. يمكن أن تكون فارغة.

stderr OutputStream: ERROR(/OutputStream) حيث سيتم إعادة توجيه ناتج الخطأ. يمكن أن تكون فارغة.

command String: أمر النظام المحدّد والوسيطات الاختيارية للتنفيذ

المرتجعات
CommandResult CommandResult يحتوي على نتيجة من تنفيذ الأمر

runTimedCmdWithOutputMonitor

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

طريقة مساعدة لتنفيذ طلب نظام وإيقافه إذا استغرق وقتًا أطول من وقت محدّد وتتتبّع أيضًا مصادر الإخراج بحثًا عن أي نشاط، وتُوقف البث في حال عدم رصد أي نشاط في البث لعدة دقائق. في حال ضبط idleOutputTimeout على صفر، لن يتم تنفيذ عملية مراقبة البث.

المعلمات
timeout long: الحد الأقصى للوقت الذي يجب الانتظاره بالكيلومتر. القيمة 0 تعني عدم وجود مهلة.

idleOutputTimeout long: الحد الأقصى للوقت الذي يجب الانتظاره بالمللي ثانية للحصول على الإخراج في مصادر الإخراج

command String: أمر النظام المحدّد والوسيطات الاختيارية للتنفيذ

المرتجعات
CommandResult CommandResult يحتوي على نتيجة من تنفيذ الأمر

runTimedCmdWithOutputMonitor

public abstract 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) حيث سيتم إعادة توجيه الإخراج العادي. يمكن أن تكون فارغة.

stderr OutputStream: ERROR(/OutputStream) حيث سيتم إعادة توجيه ناتج الخطأ. يمكن أن تكون فارغة.

cacheClient ICacheClient: مثيل ICacheClient المستخدَم لمعالجة التخزين المؤقت

command String: أمر النظام المحدّد وسيطات اختيارية لـ exec

المرتجعات
CommandResult CommandResult يحتوي على نتيجة من تشغيل الأمر

runTimedRetry

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 إذا اكتملت العملية بنجاح قبل بلوغ عدد المحاولات

runTimedRetryWithOutputMonitor

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 إذا اكتملت العملية بنجاح قبل بلوغ عدد المحاولات

runTimedWithOutputMonitor

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 نتيجة العملية

setEnvVariable

public abstract void setEnvVariable (String key, 
                String value)

يُستخدَم لضبط متغيّر بيئة عند تنفيذ أوامر النظام.

المعلمات
key String: اسم المتغيّر

value String: قيمة المتغيّر

راجِع أيضًا:

setEnvVariablePriority

public abstract void setEnvVariablePriority (IRunUtil.EnvPriority priority)

حدِّد ما إذا كان إلغاء ضبط متغيّر البيئة له أولوية أعلى من ضبطه عند إنشاء عملية أم لا. تكون الأولوية التلقائية لإلغاء الضبط أعلى، ما يعني أنّه في حال محاولة ضبط متغيّر بالاسم نفسه، لن يحدث ذلك لأنّه سيتم إلغاء ضبط المتغيّر. لا يمكن استخدامها في مثيل IRunUtil التلقائي.

المعلمات
priority IRunUtil.EnvPriority

setInterruptibleInFuture

public abstract void setInterruptibleInFuture (Thread thread, 
                long timeMs)

يتم ضبطها على أنّها قابلة للمقاطعة بعد بعض الوقت. ERROR(/CommandScheduler#shutdownHard()) لفرض إغلاق الحساب في نهاية المطاف.

المعلمات
thread Thread: سلسلة المحادثات التي ستصبح قابلة للمقاطعة

timeMs long: وقت الانتظار قبل ضبط الإعداد على "يمكن المقاطعة"

setLinuxInterruptProcess

public abstract void setLinuxInterruptProcess (boolean interrupt)

السماح باستخدام الأمر kill في نظام التشغيل Linux لإيقاف العملية التي يتم تشغيلها من خلال طرق #runTimed عندما تبلغ مهلة زمنية لا يمكن استخدامها في مثيل IRunUtil التلقائي.

المعلمات
interrupt boolean

setRedirectStderrToStdout

public abstract void setRedirectStderrToStdout (boolean redirect)

اضبط بث الأخطاء العادي لإعادة التوجيه إلى بث المخرجات العادي عند تشغيل أوامر النظام. القيمة الأولية هي خطأ.

المعلمات
redirect boolean: قيمة جديدة لمعرفة ما إذا كان سيتم إعادة التوجيه أم لا

setWorkingDir

public abstract void setWorkingDir (File dir)

لضبط دليل العمل لأوامر النظام

المعلمات
dir File: دليل العمل

راجِع أيضًا:

النوم

public abstract void sleep (long time)

طريقة مساعدة للنوم لفترة زمنية معيّنة، مع تجاهل أي استثناءات

المعلمات
time long: عدد المللي ثانية للدخول في وضع السكون. سيتم تجاهل القيم التي تقل عن 0 أو تساويها.

unsetEnvVariable

public abstract void unsetEnvVariable (String key)

تؤدي هذه الوظيفة إلى إلغاء ضبط متغيّر بيئة، وبالتالي يتم تشغيل أوامر النظام بدون متغيّر البيئة هذا.

المعلمات
key String: اسم المتغيّر

راجِع أيضًا:

uploadCache

public abstract void uploadCache (ICacheClient cacheClient, 
                ExecutableActionResult actionResult)

تُحمِّل آخر ExecutableActionResult تم تشغيله باستخدام cacheClient.

المعلمات
cacheClient ICacheClient: ICacheClient المستخدَم لتحميل النتيجة

actionResult ExecutableActionResult: ExecutableActionResult المطلوب تحميله