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.

الطرق العامة

السماح بالمقاطعة

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) الذي يحتوي على أمر نظام محدّد ووسيطات اختيارية إلى exec

المرتجعات
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: أمر النظام المحدد والوسيطات الاختيارية إلى exec

المرتجعات
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

وقت التشغيل

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: أمر النظام المحدّد والوسيطات اختياريًا إلى exec

المرتجعات
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: أمر النظام المحدّد والوسيطات اختياريًا إلى exec

المرتجعات
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: أمر النظام المحدّد والوسيطات اختياريًا إلى exec

المرتجعات
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: أمر النظام المحدّد والوسيطات اختياريًا إلى exec

المرتجعات
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: أمر النظام المحدّد والوسيطات اختياريًا إلى exec

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

runTimedCmdWithInput

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

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

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

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

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

المرتجعات
CommandResult عنصر CommandResult يحتوي على نتيجة من الأمر run

runTimedCmdWithInput

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

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

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

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

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

المرتجعات
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: أمر النظام المحدد والوسيطات الاختيارية إلى exec

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

runTimedCmdWithOutputMonitor

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

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

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

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

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

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

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

المرتجعات
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: المهلة هي الحد الأقصى للوقت الذي يجب الانتظاره بالملي ثانية. ويعني الصفر عدم وجود مهلة.

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

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

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

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

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

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

RunTimedإعادة المحاولة

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)

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

المعلمات
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 المطلوب تحميله