InvocationLocal
public class InvocationLocal
extends Object
java.lang.Object | |
↳ | com.android.tradefed.invoker.logger.InvocationLocal<T> |
מחלקה זו מספקת משתנים של היקף הפעלה.
המנגנון פועל בדומה ל- ERROR(/ThreadLocal)
. משתנים אלו נבדלים מהמקבילים הרגילים שלהם בקוד זה, בהתראה הניגשת לאחד (באמצעות שיטת get
שלו) יש עותק משלו, אתחול עצמאי של המשתנה. InvocationLocal
מופעים הם בדרך כלל שדות סטטיים פרטיים במחלקות שרוצות לשייך מצב ל-invocation.
כל הזמנה משויכת לעותק של משתנה בהיקף הפעלה כל עוד ההפעלה מתבצעת והמופע InvocationLocal
נגיש. לאחר השלמת הזמנה, כל העותקים שלה של מופעים מקומיים של הזמנה כפופים לאיסוף אשפה (אלא אם קיימות אזכורים אחרים להעתקים אלה).
שימו לב שבניגוד ERROR(/ThreadLocal)
מופעים שכבר לא מוזכרים בזמן שההתקשרות עדיין מתבצעת, לא נאספים אשפה. לכן לא מומלץ ליצור מופעים מקומיים או לא סטטיים מכיוון שהם עלולים לגדול ללא קשר.
אזהרה: השתמש במחלקה זו במשורה מכיוון ש-local-invocation הם משתנים גלובליים מהוללים עם הרבה מאותן מלכודות.
סיכום
בנאים ציבוריים | |
---|---|
InvocationLocal () |
שיטות ציבוריות | |
---|---|
final T | get () מחזירה את העותק של ההתקשרות המתבצעת כעת של המשתנה המקומי של ההתקשרות. |
שיטות מוגנות | |
---|---|
T | initialValue () מחזירה את ה"ערך ההתחלתי" של ההזמנה הנוכחית עבור משתנה מקומי זה. |
בנאים ציבוריים
InvocationLocal
public InvocationLocal ()
שיטות ציבוריות
לקבל
public final T get ()
מחזירה את העותק של ההתקשרות המתבצעת כעת של המשתנה המקומי של ההתקשרות. אם למשתנה אין ערך עבור ההפעלה הנוכחית, הוא מאותחל תחילה לערך המוחזר על ידי קריאה לשיטת initialValue()
.
החזרות | |
---|---|
T | העותק של ההזמנה המבצעת כעת של ה-invocation-local הזה. |
שיטות מוגנות
ערך התחלתי
protected T initialValue ()
מחזירה את ה"ערך ההתחלתי" של ההזמנה הנוכחית עבור משתנה מקומי זה. שיטה זו תופעל בפעם הראשונה שקוד המופעל בהקשר של הפנייה ניגש למשתנה עם השיטה get()
. שיטה זו מובטחת שתופעל לכל היותר פעם אחת בכל הפניה.
יישום זה פשוט מחזיר null
אך ניתן לשנותו על ידי סיווג משנה InvocationLocal
ועקוף שיטה זו.
החזרות | |
---|---|
T | הערך ההתחלתי של משתנה זה בהיקף הפעלה |