InvocationLocal
public
class
InvocationLocal
extends Object
java.lang.Object | |
↳ | com.android.tradefed.invoker.logger.InvocationLocal<T> |
توفّر هذه الفئة متغيّرات نطاق الاستدعاء.
تعمل الآلية بطريقة مشابهة لـ ThreadLocal
. تختلف هذه المتغيّرات عن
نظيراتها العادية في هذا الرمز البرمجي في طلب الوصول إلى أحدها (من خلال طريقة get
)
يحتوي على نسخة من المتغيّر تم إعدادها بشكل مستقل. تكون InvocationLocal
instances
عادةً حقولًا ثابتة خاصة في الصفوف التي تريد ربط الحالة بطلب.
يرتبط كلّ طلب بنسخة من متغيّر على مستوى الطلب ما دام طلب
قيد التقدّم ويمكن الوصول إلى مثيل InvocationLocal
. بعد اكتمال عملية invocation، تخضع جميع نُسخ المثيلات المحلية لطلب التنفيذ لجمع القمامة (ما لم تكن هناك إشارات أخرى إلى هذه النُسخ).
يُرجى العلم أنّه على عكس مثيلات 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 |
القيمة الأولية لهذا المتغيّر على مستوى الطلب |