زمانبندی دستورات
public interface ICommandScheduler
| com.android.tradefed.command.ICommandScheduler |
یک زمانبند برای اجرای دستورات TradeFederation.
خلاصه
کلاسهای تو در تو | |
|---|---|
interface | ICommandScheduler.IScheduledInvocationListenerشنوندهای برای رویدادهای فراخوانی هنگام اتمام فراخوانی. |
روشهای عمومی | |
|---|---|
abstract Pair <Boolean, Integer> | addCommand (String[] args)یک دستور به زمانبند اضافه میکند. |
abstract void | addCommandFile (String cmdFile,تمام دستورات فایل داده شده را به برنامه زمانبندی اضافه میکند. |
abstract void | await ()منتظر میماند تا زمانبند شروع به اجرا کند، از جمله در صورت لزوم، منتظر میماند تا تحویل از TF قدیمی تکمیل شود. |
abstract void | displayCommandQueue (PrintWriter printWriter)اطلاعات اشکالزدایی دقیق در مورد وضعیت صف اجرای دستور را نمایش میدهد. |
abstract void | displayCommandsInfo (PrintWriter printWriter, String regex)لیستی از دستورات فعلی را نمایش میدهد. |
abstract void | displayInvocationsInfo (PrintWriter printWriter)فهرستی از فراخوانیهای فعلی را نمایش میدهد. |
abstract void | dumpCommandsXml (PrintWriter printWriter, String regex) فایل xml بسط داده شده برای دستور را به همراه تمام مقادیر |
abstract long | execCommand ( IInvocationContext context, ICommandScheduler.IScheduledInvocationListener listener, String[] args) مستقیماً یک دستگاه را اختصاص میدهد و یک دستور را بدون اضافه کردن آن به صف دستورات با استفاده از یک |
abstract long | execCommand ( ICommandScheduler.IScheduledInvocationListener listener, String[] args)مستقیماً یک دستگاه را اختصاص میدهد و یک دستور را بدون اضافه کردن آن به صف دستورات اجرا میکند. |
abstract long | execCommand ( ICommandScheduler.IScheduledInvocationListener listener, ITestDevice device, String[] args)اجرای مستقیم دستور روی دستگاه از قبل اختصاص داده شده. |
abstract long | execCommand ( ICommandScheduler.IScheduledInvocationListener listener,اجرای مستقیم دستور روی دستگاههای از قبل اختصاص داده شده. |
abstract CommandFileWatcher | getCommandFileWatcher ()CommandFileWatcher مناسب را برای این زمانبند دریافت کنید |
abstract int | getExecutingCommandCount ()تعداد دستورات در حال اجرا را برمیگرداند. |
abstract String | getInvocationInfo (int invocationId)اطلاعات مربوط به یک فراخوانی را با مشخص کردن شناسه فراخوانی، برمیگرداند. |
abstract CommandRunner.ExitCode | getLastInvocationExitCode ()کد خطای آخرین فراخوانی که اجرا شده است را برمیگرداند. |
abstract Throwable | getLastInvocationThrowable () مقدار |
abstract int | getReadyCommandCount ()تعداد دستوراتی که در حالت آماده در صف هستند را برمیگرداند. |
abstract boolean | isDeviceInInvocationThread ( ITestDevice device)اگر دستگاه توسط یک نخ فراخوانی فعال استفاده شود، مقدار true را برمیگرداند. |
abstract void | join ()منتظر میماند تا زمانبندی تکمیل شود. |
abstract void | join (long millis)منتظر میماند تا زمانبند (scheduler) تکمیل شود یا پس از مدت زمان مشخص شده بر حسب میلیثانیه، زمانبندی به پایان برسد. |
abstract void | removeAllCommands ()حذف تمام دستورات از برنامه زمانبندی |
abstract void | setClearcutClient (ClearcutClient client)کلاینت را طوری تنظیم کنید که دادههای مهار را گزارش دهد |
default void | setMaxPollTime (long polling) |
default void | setPrintSchedulingWarning (boolean print) |
abstract boolean | shouldShutdownOnCmdfileError ()اگر نیاز به خاموش کردن برنامهریز در صورت بروز خطا در یک دستور داشته باشیم، مقدار true را برمیگرداند |
default void | shutdown ()تلاش برای خاموش کردنِ موقرانهی زمانبندیِ فرمان. |
abstract void | shutdown (boolean notifyStop)تلاش برای خاموش کردنِ موقرانهی زمانبندیِ فرمان. |
abstract void | shutdownHard (boolean killAdb)تلاش برای خاموش کردن اجباری زمانبند دستورات. |
abstract void | shutdownHard ()تلاش برای خاموش کردن اجباری زمانبند دستورات. |
abstract void | shutdownOnEmpty () مشابه |
abstract void | start () |
abstract boolean | stopInvocation (int invocationId, String cause)با مشخص کردن شناسه (id) یک فراخوانی در حال اجرا، آن را متوقف کنید. |
default boolean | stopInvocation (int invocationId)با مشخص کردن شناسه (id) یک فراخوانی در حال اجرا، آن را متوقف کنید. |
abstract boolean | stopInvocation ( ITestInvocation invocation)متوقف کردن یک فراخوانی در حال اجرا |
default void | stopScheduling ()برنامهریزی و پذیرش آزمایشهای جدید را متوقف میکند اما Tradefed را متوقف نمیکند. |
روشهای عمومی
دستور add
public abstract Pair<Boolean, Integer> addCommand (String[] args)
یک دستور به زمانبند اضافه میکند.
یک دستور اساساً نمونهای از یک پیکربندی برای اجرا و آرگومانهای مرتبط با آن است.
اگر آرگومان "--help" مشخص شود، متن راهنمای پیکربندی در خروجی stdout نمایش داده میشود. در غیر این صورت، پیکربندی به صف اجرا اضافه میشود.
| پارامترها | |
|---|---|
args | String : آرگومانهای پیکربندی. |
| بازگشتها | |
|---|---|
Pair <Boolean, Integer> | یک جفت مقدار، مقدار اول یک مقدار بولی true است اگر دستور با موفقیت اضافه شده باشد. مقدار دوم شناسه ردیاب دستور شناخته شده (مقدار غیر منفی) است اگر دستور با موفقیت اضافه شده باشد، وقتی دستور برای همه دستگاهها اضافه شده باشد 0 و در غیر این صورت -1 را برمیگرداند. |
| پرتابها | |
|---|---|
ConfigurationException | اگر دستور قابل تجزیه نبود |
همچنین ببینید:
فایل فرمان را اضافه کنید
public abstract void addCommandFile (String cmdFile,
extraArgs) تمام دستورات فایل داده شده را به برنامه زمانبندی اضافه میکند.
| پارامترها | |
|---|---|
cmdFile | String : مسیر سیستم فایل فایل کامند |
extraArgs | : یک ERROR(/List) از آرگومانهای String برای اضافه کردن به هر دستور تجزیهشده از فایل. میتواند خالی باشد اما نباید null باشد. |
| پرتابها | |
|---|---|
ConfigurationException | اگر فایل فرمان قابل تجزیه نبود |
همچنین ببینید:
منتظر
public abstract void await ()
منتظر میماند تا زمانبند شروع به اجرا کند، از جمله در صورت لزوم، منتظر میماند تا تحویل از TF قدیمی تکمیل شود.
صف فرمان نمایش
public abstract void displayCommandQueue (PrintWriter printWriter)
اطلاعات اشکالزدایی دقیق در مورد وضعیت صف اجرای دستور را نمایش میدهد.
نمایش اطلاعات دستورات
public abstract void displayCommandsInfo (PrintWriter printWriter,
String regex)لیستی از دستورات فعلی را نمایش میدهد.
| پارامترها | |
|---|---|
printWriter | PrintWriter : ERROR(/PrintWriter) که باید به آن خروجی داده شود. |
regex | String : عبارت منظمی که دستورات باید با آن مطابقت داشته باشند تا چاپ شوند. اگر تهی باشد، تمام دستورات چاپ میشوند. |
نمایش اطلاعات فراخوانیها
public abstract void displayInvocationsInfo (PrintWriter printWriter)
فهرستی از فراخوانیهای فعلی را نمایش میدهد.
| پارامترها | |
|---|---|
printWriter | PrintWriter : ERROR(/PrintWriter) که باید به آن خروجی داده شود. |
dumpCommandsXml
public abstract void dumpCommandsXml (PrintWriter printWriter,
String regex) فایل xml بسط داده شده برای دستور را به همراه تمام مقادیر Option مشخص شده برای همه دستورات فعلی، کپی کنید.
| پارامترها | |
|---|---|
printWriter | PrintWriter : ERROR(/PrintWriter) برای نمایش وضعیت. |
regex | String : عبارت منظمی که دستورات باید با آن مطابقت داشته باشند تا فایل xml کپی شود. اگر null باشد، تمام دستورات کپی میشوند. |
دستور exec
public abstract long execCommand (IInvocationContext context, ICommandScheduler.IScheduledInvocationListener listener, String[] args)
مستقیماً یک دستگاه را اختصاص میدهد و یک دستور را بدون اضافه کردن آن به صف دستورات با استفاده از یک IInvocationContext موجود اجرا میکند.
| پارامترها | |
|---|---|
context | IInvocationContext : یک IInvocationContext موجود. |
listener | ICommandScheduler.IScheduledInvocationListener : به ICommandScheduler.IScheduledInvocationListener اطلاع داده میشود. |
args | String : آرگومانهای دستور |
| بازگشتها | |
|---|---|
long | |
| پرتابها | |
|---|---|
ConfigurationException | اگر دستور نامعتبر بود |
NoDeviceException | اگر وسیلهای برای استفاده وجود ندارد |
دستور exec
public abstract long execCommand (ICommandScheduler.IScheduledInvocationListener listener, String[] args)
مستقیماً یک دستگاه را اختصاص میدهد و یک دستور را بدون اضافه کردن آن به صف دستورات اجرا میکند.
| پارامترها | |
|---|---|
listener | ICommandScheduler.IScheduledInvocationListener : به ICommandScheduler.IScheduledInvocationListener اطلاع داده میشود. |
args | String : آرگومانهای دستور |
| بازگشتها | |
|---|---|
long | شناسه فراخوانی دستور زمانبندیشده. |
| پرتابها | |
|---|---|
ConfigurationException | اگر دستور نامعتبر بود |
NoDeviceException | اگر وسیلهای برای استفاده وجود ندارد |
دستور exec
public abstract long execCommand (ICommandScheduler.IScheduledInvocationListener listener, ITestDevice device, String[] args)
اجرای مستقیم دستور روی دستگاه از قبل اختصاص داده شده.
| پارامترها | |
|---|---|
listener | ICommandScheduler.IScheduledInvocationListener : به ICommandScheduler.IScheduledInvocationListener اطلاع داده میشود. |
device | ITestDevice : دستگاه ITestDevice مورد استفاده |
args | String : آرگومانهای دستور |
| بازگشتها | |
|---|---|
long | شناسه فراخوانی دستور زمانبندیشده. |
| پرتابها | |
|---|---|
ConfigurationException | اگر دستور نامعتبر بود |
دستور exec
public abstract long execCommand (ICommandScheduler.IScheduledInvocationListener listener,devices, String[] args)
اجرای مستقیم دستور روی دستگاههای از قبل اختصاص داده شده.
| پارامترها | |
|---|---|
listener | ICommandScheduler.IScheduledInvocationListener : به ICommandScheduler.IScheduledInvocationListener اطلاع داده میشود. |
devices | : ERROR(/List برای استفاده |
args | String : آرگومانهای دستور |
| بازگشتها | |
|---|---|
long | شناسه فراخوانی دستور زمانبندیشده. |
| پرتابها | |
|---|---|
ConfigurationException | اگر دستور نامعتبر بود |
دریافتکنندهی فرمانفایل
public abstract CommandFileWatcher getCommandFileWatcher ()
CommandFileWatcher مناسب را برای این زمانبند دریافت کنید
| بازگشتها | |
|---|---|
CommandFileWatcher | |
دریافت تعداد فرمانهای در حال اجرا
public abstract int getExecutingCommandCount ()
تعداد دستورات در حال اجرا را برمیگرداند.
| بازگشتها | |
|---|---|
int | |
اطلاعات فراخوانی را دریافت کنید
public abstract String getInvocationInfo (int invocationId)
اطلاعات مربوط به یک فراخوانی را با مشخص کردن شناسه فراخوانی، برمیگرداند.
| پارامترها | |
|---|---|
invocationId | int : شناسه ردیابی فراخوانی. |
| بازگشتها | |
|---|---|
String | String حاوی اطلاعات مربوط به فراخوانی. |
کد خروج آخرین فراخوانی (getLastInvocationExitCode)
public abstract CommandRunner.ExitCode getLastInvocationExitCode ()
کد خطای آخرین فراخوانی که اجرا شده است را برمیگرداند. اگر هنوز هیچ فراخوانی اجرا نشده باشد، مقدار 0 (بدون خطا) را برمیگرداند.
| بازگشتها | |
|---|---|
CommandRunner.ExitCode | |
getLastInvocationThrowable
public abstract Throwable getLastInvocationThrowable ()
تابع Throwable از آخرین فراخوانی که اجرا شده است، برمیگرداند. اگر هیچ Throwableای در دسترس نباشد، مقدار null را برمیگرداند.
| بازگشتها | |
|---|---|
Throwable | |
تعداد فرمانهای آماده
public abstract int getReadyCommandCount ()
تعداد دستوراتی که در حالت آماده در صف هستند را برمیگرداند.
| بازگشتها | |
|---|---|
int | |
isDeviceInInvocationThread
public abstract boolean isDeviceInInvocationThread (ITestDevice device)
اگر دستگاه توسط یک نخ فراخوانی فعال استفاده شود، مقدار true را برمیگرداند.
| پارامترها | |
|---|---|
device | ITestDevice |
| بازگشتها | |
|---|---|
boolean | |
پیوستن
public abstract void join ()
منتظر میماند تا زمانبندی تکمیل شود.
همچنین ببینید:
پیوستن
public abstract void join (long millis)
منتظر میماند تا زمانبند (scheduler) تکمیل شود یا پس از مدت زمان مشخص شده بر حسب میلیثانیه، زمانبندی به پایان برسد.
| پارامترها | |
|---|---|
millis | long |
همچنین ببینید:
حذف همه دستورات
public abstract void removeAllCommands ()
حذف تمام دستورات از برنامه زمانبندی
تنظیمClearcutClient
public abstract void setClearcutClient (ClearcutClient client)
کلاینت را طوری تنظیم کنید که دادههای مهار را گزارش دهد
| پارامترها | |
|---|---|
client | ClearcutClient |
setMaxPollTime
public void setMaxPollTime (long polling)
| پارامترها | |
|---|---|
polling | long |
هشدار زمانبندی چاپ (setPrintSchedulingWarning)
public void setPrintSchedulingWarning (boolean print)
| پارامترها | |
|---|---|
print | boolean |
خطای shouldShutdownOnCmdfileError
public abstract boolean shouldShutdownOnCmdfileError ()
اگر نیاز به خاموش کردن برنامهریز در صورت بروز خطا در یک دستور داشته باشیم، مقدار true را برمیگرداند
| بازگشتها | |
|---|---|
boolean | |
خاموشی
public void shutdown ()
تلاش برای خاموش کردنِ موقرانهی زمانبندیِ فرمان.
دستورات منتظر آزمایش را پاک میکند و درخواست میکند که تمام فراخوانیهای در حال انجام به طور کامل خاتمه یابند.
پس از فراخوانی shutdown، حلقه اصلی زمانبند قبل از خروج کامل، منتظر میماند تا تمام فراخوانیهای در حال انجام کامل شوند.
خاموشی
public abstract void shutdown (boolean notifyStop)
تلاش برای خاموش کردنِ موقرانهی زمانبندیِ فرمان.
| پارامترها | |
|---|---|
notifyStop | boolean : اگر درست باشد، فراخوانیهای مربوط به خاموش شدن TF را اطلاع میدهد. |
خاموش کردن هارد
public abstract void shutdownHard (boolean killAdb)
تلاش برای خاموش کردن اجباری زمانبند دستورات.
مشابه shutdown() است، اما به صورت اختیاری اتصال adb را نیز قطع میکند، در تلاشی برای «الهامبخشیدن» به فراخوانیهای در حال انجام برای تکمیل سریعتر.
| پارامترها | |
|---|---|
killAdb | boolean |
خاموش کردن هارد
public abstract void shutdownHard ()
تلاش برای خاموش کردن اجباری زمانبندی دستورات. مشابه shutdownHard(true).
خاموش کردن خالی
public abstract void shutdownOnEmpty ()
مشابه shutdown() است، اما در عوض منتظر میماند تا تمام دستورات قبل از خروج اجرا شوند.
توجه داشته باشید که اگر هر دستوری در حالت حلقه باشد، زمانبند هرگز خارج نخواهد شد.
شروع
public abstract void start ()
ICommandScheduler را اجرا کنید.
باید قبل از فراخوانی سایر متدها فراخوانی شود.
تا زمانی که shutdown() فراخوانی شود، اجرا خواهد شد. به Thread.start() مراجعه کنید.
توقف فراخوانی
public abstract boolean stopInvocation (int invocationId,
String cause)با مشخص کردن شناسه (id) یک فراخوانی در حال اجرا، آن را متوقف کنید.
| پارامترها | |
|---|---|
invocationId | int : شناسه ردیابی فراخوانی. |
cause | String : دلیل توقف فراخوانی. |
| بازگشتها | |
|---|---|
boolean | اگر فراخوانی متوقف شده باشد، true و در غیر این صورت false برمیگرداند. |
| پرتابها | |
|---|---|
UnsupportedOperationException | اگر پیادهسازی از این پشتیبانی نمیکند |
توقف فراخوانی
public boolean stopInvocation (int invocationId)
با مشخص کردن شناسه (id) یک فراخوانی در حال اجرا، آن را متوقف کنید.
| پارامترها | |
|---|---|
invocationId | int |
| بازگشتها | |
|---|---|
boolean | اگر فراخوانی متوقف شده باشد، true و در غیر این صورت false برمیگرداند. |
| پرتابها | |
|---|---|
UnsupportedOperationException | اگر پیادهسازی از این پشتیبانی نمیکند |
توقف فراخوانی
public abstract boolean stopInvocation (ITestInvocation invocation)
متوقف کردن یک فراخوانی در حال اجرا
| پارامترها | |
|---|---|
invocation | ITestInvocation |
| بازگشتها | |
|---|---|
boolean | اگر فراخوانی متوقف شده باشد، true و در غیر این صورت false برمیگرداند. |
| پرتابها | |
|---|---|
UnsupportedOperationException | اگر پیادهسازی از این پشتیبانی نمیکند |
توقف زمانبندی
public void stopScheduling ()
زمانبندی و پذیرش تستهای جدید را متوقف میکند اما Tradefed را متوقف نمیکند. این به معنای فعال کردن یک خاموشسازی دو مرحلهای است که در آن ابتدا تمام تستهای در حال اجرا را تخلیه میکنیم، سپس فرآیند Tradefed را خاتمه میدهیم.
محتوا و نمونه کدها در این صفحه مشمول پروانههای توصیفشده در پروانه محتوا هستند. جاوا و OpenJDK علامتهای تجاری یا علامتهای تجاری ثبتشده Oracle و/یا وابستههای آن هستند.
تاریخ آخرین بهروزرسانی 2025-12-04 بهوقت ساعت هماهنگ جهانی.