InvocationLocal

public class InvocationLocal
extends Object

java.lang.Object
com.android.tradefed.invoker.logger.InvocationLocal<T>


توفّر هذه الفئة متغيّرات نطاق الاستدعاء.

تعمل الآلية بطريقة مشابهة لـ ThreadLocal. تختلف هذه المتغيّرات عن نظيراتها العادية في هذا الرمز البرمجي في طلب الوصول إلى أحدها (من خلال طريقة get) يحتوي على نسخة من المتغيّر تم إعدادها بشكل مستقل. وتكون مثيلات InvocationLocal عادةً حقولاً ثابتة خاصة في الفئات التي تريد ربط الحالة باستدعاء.

يرتبط كلّ طلب بنسخة من متغيّر على مستوى الطلب ما دام طلب قيد التقدّم ويمكن الوصول إلى مثيل InvocationLocal. بعد اكتمال عملية الاستدعاء، تكون جميع نُسخه من مثيلات الاستدعاء المحلية خاضعة لجمع البيانات غير المرغوب فيها (ما لم تتوفّر مراجع أخرى لهذه النُسخ).

يُرجى العلم أنّه على عكس مثيلات ThreadLocal التي لم تعُد تتم الإشارة إليها أثناء استمرار استدعاء ، لا يتم جمع المهملات. لذلك، لا يُنصح بإنشاء نُسخ محلية أو غير ثابتة لأنّها قد تنمو بلا حدود.

تحذير: استخدِم هذه الفئة بشكلٍ مقتصد لأنّ متغيّرات invocation-locals هي متغيّرات عالمية مميّزة تتضمّن العديد من المشاكل نفسها.

ملخّص

وظائف الإنشاء العامة

InvocationLocal()

الطرق العامة

final T get()

عرض نسخة الطلب الجاري تنفيذه من هذا المتغيّر المحلي للطلب

الطرق المحمية

T initialValue()

تعرض "القيمة الأولية" للاستدعاء الحالي لمتغير الاستدعاء المحلي هذا.

وظائف الإنشاء العامة

InvocationLocal

public InvocationLocal ()

الطرق العامة

احصل على

public final T get ()

تعرض نسخة الاستدعاء الجاري تنفيذها حاليًا لهذا المتغيّر المحلي للاستدعاء. إذا لم يكن للمتغيّر أي قيمة للاستدعاء الحالي، يتم إعداده أولاً بالقيمة التي يعرضها استدعاء طريقة initialValue().

المرتجعات
T نسخة الطلب الجاري تنفيذه حاليًا من هذا الطلب-المحلية.

الطرق المحمية

القيمة_الأوّلية

protected T initialValue ()

تُعيد "القيمة الأولية" لطلب الاستدعاء الحالي لهذا المتغيّر المحلي لطلب الاستدعاء. سيتم استدعاء هذه الطريقة في المرة الأولى التي يصل فيها الرمز الذي يتم تنفيذه في سياق الاستدعاء إلى المتغيّر باستخدام الطريقة get(). يُضمن استدعاء هذه الطريقة مرة واحدة فقط في كل مرة.

تعرض طريقة التنفيذ هذه ببساطة null، ولكن يمكن تغييرها من خلال التصنيف الفرعي InvocationLocal وتجاهل هذه الطريقة.

المرتجعات
T القيمة الأولية لهذا المتغيّر على مستوى الطلب