RunUtil

public class RunUtil
extends Object implements IRunUtil

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


مجموعة من الطرق المساعدة لتنفيذ العمليات

ملخّص

الثوابت

String INHERITIO_PREFIX

String RUNNABLE_NOTIFIER_NAME

طُرق وضع التصميم العامة

RunUtil()

أنشئ عنصر RunUtil جديدًا لاستخدامه.

RunUtil(boolean inheritEnvVars)

الإجراءات العامة

void allowInterrupt(boolean allow)

تسمح هذه السمة بتفعيل/إيقاف عمليات المقاطعة في سلسلة التعليمات الحالية.

ProcessBuilder createProcessBuilder(ProcessBuilder.Redirect redirect, List<String> commandList, boolean enableCache)
static IRunUtil getDefault()

احصل على مرجع إلى عنصر RunUtil التلقائي.

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

يوقف عمليات التشغيل الجارية أو القادمة في سلسلة التعليمات البرمجية المحدّدة.

void interrupt(Thread thread, String message)

يوقف عمليات التشغيل الجارية أو القادمة في سلسلة التعليمات البرمجية المحدّدة.

boolean isInterruptAllowed()

تعرض هذه السمة حالة المقاطعة الخاصة بفئة RunUtil.

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

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

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

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

Process runCmdInBackground(List<String> command)

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

Process runCmdInBackground(String... command)

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

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

تنفيذ الأمر مع سجلّ OutputStream لمخرجات الأمر

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

void setEnvVariable(String name, String value)

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

void setEnvVariablePriority(IRunUtil.EnvPriority priority)

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

void setInterruptibleInFuture(Thread thread, long timeMs)

يتم ضبطها على إمكانية المقاطعة بعد بعض وقت الانتظار.

void setLinuxInterruptProcess(boolean interrupt)

السماح باستخدام مقاطعة Linux "kill" في العمليات التي يتم تشغيلها من خلال طرق ‎#runTimed عند انتهاء المهلة

void setRedirectStderrToStdout(boolean redirect)

اضبط دفق الخطأ العادي لإعادة التوجيه إلى دفق الإخراج العادي عند تنفيذ أوامر النظام.

void setWorkingDir(File dir)

تضبط هذه السمة دليل العمل لأوامر النظام.

void sleep(long time)

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

void unsetEnvVariable(String key)

يؤدي إلى إلغاء ضبط متغير بيئة، وبالتالي يتم تنفيذ أوامر النظام بدون متغير البيئة هذا. قد يتم اكتساب متغيرات البيئة من العملية الرئيسية، لذا علينا حذف متغير البيئة من ProcessBuilder.environment()

الثوابت

INHERITIO_PREFIX

public static final String INHERITIO_PREFIX

Constant Value: "inheritio-"

RUNNABLE_NOTIFIER_NAME

public static final String RUNNABLE_NOTIFIER_NAME

القيمة الثابتة: "RunnableNotifier"

طُرق وضع التصميم العامة

RunUtil

public RunUtil ()

أنشئ عنصر RunUtil جديدًا لاستخدامه.

RunUtil

public RunUtil (boolean inheritEnvVars)

المعلَمات
inheritEnvVars boolean

الإجراءات العامة

allowInterrupt

public void allowInterrupt (boolean allow)

تسمح هذه السمة بتفعيل/إيقاف عمليات المقاطعة في سلسلة التعليمات الحالية. إذا كان مسموحًا بذلك، يمكن مقاطعة عمليات التنفيذ الخاصة بالسلسلة الحالية من سلاسل أخرى باستخدام الطريقة interrupt(Thread, String).

المعلَمات
allow boolean: تحدّد ما إذا كان سيتم السماح بمقاطعة التنفيذ في سلسلة التعليمات البرمجية الحالية.

createProcessBuilder

public ProcessBuilder createProcessBuilder (ProcessBuilder.Redirect redirect, 
                List<String> commandList, 
                boolean enableCache)

المعلَمات
redirect ProcessBuilder.Redirect

commandList List

enableCache boolean

المرتجعات
ProcessBuilder

getDefault

public static IRunUtil getDefault ()

احصل على مرجع إلى عنصر RunUtil التلقائي.

يفيد ذلك المتصلين الذين يريدون استخدام IRunUtil بدون تخصيص. ننصح المتصلين الذين يحتاجون إلى مثيل IRunUtil مخصّص (أي يحتاجون إلى استدعاء setEnvVariable(String,String) أو setWorkingDir(File)) بإنشاء نسختهم الخاصة.

المرتجعات
IRunUtil

مقاطعة

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

يوقف عمليات التشغيل الجارية أو القادمة في سلسلة التعليمات البرمجية المحدّدة. ستؤدي عمليات التشغيل على سلسلة التعليمات المحدّدة إلى طرح الخطأ RunInterruptedException.

المعلَمات
message String: رسالة بشأن RunInterruptedException

errorId ErrorIdentifier: تمثّل هذه السمة سبب الانقطاع عند توفّره.

مقاطعة

public void interrupt (Thread thread, 
                String message)

يوقف عمليات التشغيل الجارية أو القادمة في سلسلة التعليمات البرمجية المحدّدة. ستؤدي عمليات التشغيل على سلسلة التعليمات المحدّدة إلى طرح الخطأ RunInterruptedException.

المعلَمات
message String: رسالة بشأن RunInterruptedException

isInterruptAllowed

public boolean isInterruptAllowed ()

تعرض هذه السمة حالة المقاطعة الخاصة بفئة RunUtil.

المرتجعات
boolean تكون القيمة "صحيح" إذا كان من الممكن إيقاف عملية التشغيل، و"خطأ" في الحالات الأخرى.

runCmdInBackground

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

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

المعلَمات
redirect ProcessBuilder.Redirect: Redirect المطلوب تطبيقه على ProcessBuilder.

command List: List الذي يحتوي على أمر النظام المحدّد والمعلَمات الاختيارية التي سيتم تنفيذها

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

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

runCmdInBackground

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

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

سيتم إرجاع القيمة فور إطلاق الأمر.

المعلَمات
redirect ProcessBuilder.Redirect: Redirect المطلوب تطبيقه على ProcessBuilder.

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

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

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

runCmdInBackground

public Process runCmdInBackground (List<String> command)

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

المعلَمات
command List: List الذي يحتوي على أمر النظام المحدّد والمعلَمات الاختيارية التي سيتم تنفيذها

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

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

runCmdInBackground

public Process runCmdInBackground (String... command)

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

سيتم إرجاع القيمة فور إطلاق الأمر.

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

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

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

runCmdInBackground

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

تنفيذ الأمر مع سجلّ OutputStream لمخرجات الأمر يتم دمج stdout وstderr معًا.

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

output OutputStream: OutputStream لحفظ الناتج

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

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

runEscalatingTimedRetry

public 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 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 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 CommandStatus runTimed (long timeout, 
                IRunUtil.IRunnableResult runnable, 
                boolean logErrors)

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

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

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

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

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

runTimedCmd

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

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

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

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

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

runTimedCmd

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

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

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

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

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

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

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

runTimedCmdRetry

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

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

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

retryInterval long: الوقت المطلوب الانتظار فيه بين محاولات إعادة تنفيذ الأمر

attempts int: الحد الأقصى لعدد المحاولات

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

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

runTimedCmdRetryWithOutputMonitor

public 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 CommandResult runTimedCmdSilently (long timeout, 
                String... command)

طريقة مساعدة لتنفيذ أمر نظام، وإيقافه إذا استغرق وقتًا أطول من الوقت المحدّد. يشبه runTimedCmd(long,String...)، ولكنّه لا يسجّل أي أخطاء عند حدوث استثناء.

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

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

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

runTimedCmdSilentlyRetry

public 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 CommandResult runTimedCmdWithInput (long timeout, 
                String input, 
                String... command)

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

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

input String: إدخال stdin الذي سيتم تمريره إلى العملية

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

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

runTimedCmdWithInput

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

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

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

input String: إدخال stdin الذي سيتم تمريره إلى العملية

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

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

runTimedCmdWithInput

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

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

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

input String: إدخال stdin الذي سيتم تمريره إلى العملية

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

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

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

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

runTimedCmdWithInputRedirect

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

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

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

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

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

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

runTimedCmdWithOutputMonitor

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

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

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

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

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

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

runTimedCmdWithOutputMonitor

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

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

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

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

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

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

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

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

runTimedRetry

public 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 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 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 void setEnvVariable (String name, 
                String value)

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

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

value استبدِل String بقيمة المتغيّر.

setEnvVariablePriority

public void setEnvVariablePriority (IRunUtil.EnvPriority priority)

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

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

setInterruptibleInFuture

public void setInterruptibleInFuture (Thread thread, 
                long timeMs)

يتم ضبطها على إمكانية المقاطعة بعد بعض وقت الانتظار. ERROR(/CommandScheduler#shutdownHard()) لفرض إنهاء العملية في النهاية.

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

timeMs long: الوقت الذي يجب الانتظار فيه قبل ضبط الحالة على "يمكن مقاطعتها"

setLinuxInterruptProcess

public void setLinuxInterruptProcess (boolean interrupt)

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

المعلَمات
interrupt boolean

setRedirectStderrToStdout

public void setRedirectStderrToStdout (boolean redirect)

اضبط دفق الخطأ العادي لإعادة التوجيه إلى دفق الإخراج العادي عند تنفيذ أوامر النظام. القيمة الأولية هي "خطأ".

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

setWorkingDir

public void setWorkingDir (File dir)

تضبط هذه السمة دليل العمل لأوامر النظام.

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

النوم

public void sleep (long time)

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

المعلَمات
time long: عدد الملّي ثانية التي سيتم إيقاف التنفيذ فيها، وسيتم تجاهل القيم الأقل من 0 أو التي تساوي 0

unsetEnvVariable

public void unsetEnvVariable (String key)

يؤدي إلى إلغاء ضبط متغير بيئة، وبالتالي يتم تنفيذ أوامر النظام بدون متغير البيئة هذا. قد يتم اكتساب متغيرات البيئة من العملية الرئيسية، لذا علينا حذف متغير البيئة من ProcessBuilder.environment()

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

يُرجى الاطّلاع أيضًا على: