RunUtil
public
class
RunUtil
extends Object
implements
IRunUtil
java.lang.Object | |
↳ | com.android.tradefed.util.RunUtil |
مجموعة من الطرق المساعِدة لتنفيذ العمليات
ملخّص
الحقول | |
---|---|
public
static
final
String |
INHERITIO_PREFIX
|
public
static
final
String |
RUNNABLE_NOTIFIER_NAME
|
وظائف الإنشاء العامة | |
---|---|
RunUtil()
أنشئ عنصر |
|
RunUtil(boolean inheritEnvVars)
|
الطرق العامة | |
---|---|
void
|
allowInterrupt(boolean allow)
يسمح/يمنع بعمليات المقاطعة أثناء التشغيل في سلسلة المهام الحالية. |
ProcessBuilder
|
createProcessBuilder(Redirect redirect,
|
static
IRunUtil
|
getDefault()
الحصول على إشارة إلى عنصر |
void
|
interrupt(Thread thread, String message, ErrorIdentifier errorId)
يوقف عمليات التشغيل الجارية/المقبلة في سلسلة المهام المحدّدة. |
void
|
interrupt(Thread thread, String message)
يوقف عمليات التشغيل الجارية/المقبلة في سلسلة المهام المحدّدة. |
boolean
|
isInterruptAllowed()
أدخِل حالة المقاطعة لـ RunUtil. |
Process
|
runCmdInBackground(Redirect redirect,
طريقة |
Process
|
runCmdInBackground(
طريقة |
Process
|
runCmdInBackground(
يؤدي تنفيذ الأمر مع |
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,
طريقة مساعدة لتنفيذ أمر نظام يتطلب إدخال 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)
السماح باستخدام الأمر kill في نظام التشغيل Linux لإيقاف العملية التي يتم تشغيلها من خلال طرق #runTimed عند وصولها إلى مهلة |
void
|
setRedirectStderrToStdout(boolean redirect)
اضبط بث الأخطاء العادي لإعادة التوجيه إلى بث المخرجات العادي عند تشغيل أوامر النظام. |
void
|
setWorkingDir(File dir)
لضبط دليل العمل لأوامر النظام |
void
|
sleep(long time)
طريقة مساعدة للنوم لفترة زمنية معيّنة، مع تجاهل أي استثناءات |
void
|
unsetEnvVariable(String key)
تؤدي هذه الوظيفة إلى إلغاء ضبط متغيّر بيئة، وبالتالي يتم تشغيل أوامر النظام بدون متغيّر البيئة هذا.
قد تكتسِب متغيّرات البيئة الإعدادات من العملية الرئيسية، لذا علينا حذف
متغيّر البيئة من |
الحقول
INHERITIO_PREFIX
public static final String INHERITIO_PREFIX
RUNNABLE_NOTIFIER_NAME
public static final String RUNNABLE_NOTIFIER_NAME
وظائف الإنشاء العامة
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)
السماح باستخدام الأمر kill في نظام التشغيل Linux لإيقاف العملية التي يتم تشغيلها من خلال طرق #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 أو تساويها. |
unsetEnvVariable
public void unsetEnvVariable (String key)
تؤدي هذه الوظيفة إلى إلغاء ضبط متغيّر بيئة، وبالتالي يتم تشغيل أوامر النظام بدون متغيّر البيئة هذا.
قد تكتسِب متغيّرات البيئة الإعدادات من العملية الرئيسية، لذا علينا حذف
متغيّر البيئة من ProcessBuilder.environment()
.
المعلمات | |
---|---|
key |
String : اسم المتغيّر |
راجِع أيضًا: