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

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

Process runCmdInBackground( command)

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

Process runCmdInBackground( command, OutputStream output)

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

Process runCmdInBackground(String... command)

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

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

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

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

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

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

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

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

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

CommandResult runTimedCmdWithInput(long timeout, String input, command)

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

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

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

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

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

CommandResult runTimedCmdWithOutputMonitor(long timeout, long idleOutputTimeout, 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 (Redirect redirect, 
                 commandList, 
                boolean enableCache)

المعلمات
redirect Redirect

commandList

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

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

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

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

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

runCmdInBackground

public Process runCmdInBackground ( command)

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

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

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

runCmdInBackground

public Process runCmdInBackground ( command, 
                OutputStream output)

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

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

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

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

runCmdInBackground

public Process runCmdInBackground (String... command)

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

سيتم إرجاع القيمة فورًا بعد تنفيذ الأمر.

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

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

runCmdInBackground

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

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

سيتم إرجاع القيمة فورًا بعد تنفيذ الأمر.

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

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

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

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

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

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

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, 
                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 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, 
                 command)

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

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

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

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

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

runTimedCmdWithInputRedirect

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

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

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

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

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

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

runTimedCmdWithOutputMonitor

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

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

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

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

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: اسم المتغيّر

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