DeviceConcurrentUtil

public class DeviceConcurrentUtil
extends Object

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


يحتوي على طرق وفئات مساعدة لتنفيذ الأوامر المتزامنة على الجهاز

استخدِم ExecutorService لتشغيل الأوامر التي تم تنفيذها على أنّها ShellCommandCallable، واستخدِم joinFuture(String,Future,long) للمزامنة مع Future كما تم إرجاعه بواسطة ExecutorService لتنفيذ الأمر.

ملخّص

الصفوف المتداخلة

class DeviceConcurrentUtil.ShellCommandCallable<V>

تمثّل Callable تفاصيل تنفيذ أمر shell على ITestDevice

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

static <T> T joinFuture(String taskDesc, Future<T> task, long timeout)

طريقة سهلة للانضمام إلى سلسلة التعليمات الحالية في task

يتم تمرير الأخطاء DeviceNotAvailableException وTimeoutException التي تحدث أثناء التنفيذ بشكل شفاف، ويتم تسجيل الأخطاء الأخرى كأخطاء ولكن لا يتم التعامل معها بأي طريقة أخرى.

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

joinFuture

public static T joinFuture (String taskDesc, 
                Future<T> task, 
                long timeout)

طريقة سهلة للانضمام إلى سلسلة التعليمات الحالية في task

يتم تمرير الأخطاء DeviceNotAvailableException وTimeoutException التي تحدث أثناء التنفيذ بشكل شفاف، ويتم تسجيل الأخطاء الأخرى كأخطاء ولكن لا يتم التعامل معها بأي طريقة أخرى.

المعلَمات
taskDesc String: وصف المهمة لأغراض التسجيل

task Future: Future تمثّل المهمة التي يجب الانضمام إليها

timeout long: انتهاء المهلة المحدّدة لانتظار إكمال المهمة

المرتجعات
T نتيجة المهمة مع نوع النموذج

عمليات الطرح
com.android.tradefed.device.DeviceNotAvailableException
java.util.concurrent.TimeoutException
DeviceNotAvailableException
TimeoutException