InvocationLocal
public
class
InvocationLocal
extends Object
java.lang.Object | |
↳ | com.android.tradefed.invoker.logger.InvocationLocal<T> |
इस क्लास में, शुरुआत के स्कोप वाले वैरिएबल दिए जाते हैं.
यह सुविधा, ThreadLocal
की तरह ही काम करती है. ये वैरिएबल,
उस कोड में अपने सामान्य वर्शन से अलग होते हैं. इसकी वजह यह है कि जो कोड, किसी एक (अपने get
तरीके से) को ऐक्सेस करता है
उसमें वैरिएबल की अलग से, शुरू की गई कॉपी होती है. InvocationLocal
इंस्टेंस आम तौर पर उन क्लास में निजी स्टैटिक फ़ील्ड होते हैं जो किसी कॉल के साथ स्टेटस को जोड़ना चाहते हैं.
हर कॉल, कॉल के स्कोप वाले वैरिएबल की कॉपी से तब तक जुड़ा रहता है, जब तक कॉल जारी रहता है और InvocationLocal
इंस्टेंस को ऐक्सेस किया जा सकता है. किसी कॉल को पूरा करने के बाद, कॉल के स्थानीय इंस्टेंस की सभी कॉपी को ग़ैर-ज़रूरी डेटा के तौर पर हटाया जा सकता है. हालांकि, ऐसा तब तक नहीं किया जाएगा, जब तक इन कॉपी के दूसरे रेफ़रंस मौजूद हों.
ध्यान दें कि ThreadLocal
इंस्टेंस के उलट, जिनका रेफ़रंस अब नहीं दिया जाता है उन्हें कॉल के जारी रहने के दौरान, ग़ैर-ज़रूरी डेटा के तौर पर नहीं हटाया जाता. इसलिए, स्थानीय या नॉन-स्टैटिक इंस्टेंस बनाने का सुझाव नहीं दिया जाता, क्योंकि ये बिना किसी सीमा के बढ़ सकते हैं.
चेतावनी: इस क्लास का कम से कम इस्तेमाल करें, क्योंकि इनवोकेशन-लोकल, वैसे ही ग्लोबल वैरिएबल होते हैं जिनमें कई समस्याएं होती हैं.
खास जानकारी
सार्वजनिक कंस्ट्रक्टर | |
---|---|
InvocationLocal()
|
सार्वजनिक तरीके | |
---|---|
final
T
|
get()
इस शुरू करने के लोकल वैरिएबल के अभी लागू हो रहे उस शुरू होने की कॉपी की जानकारी देता है. |
सुरक्षित तरीके | |
---|---|
T
|
initialValue()
इस इनवोकेशन-लोकल वैरिएबल के लिए, मौजूदा इनवोकेशन की "शुरुआती वैल्यू" दिखाता है. |
सार्वजनिक कंस्ट्रक्टर
इनवोकेशनलोकल
public InvocationLocal ()
सार्वजनिक तरीके
पाएं
public final T get ()
इस शुरू करने के लोकल वैरिएबल के मौजूदा लागू होने वाले कॉल की कॉपी दिखाता है. अगर वेरिएबल के मौजूदा कॉल के लिए कोई वैल्यू नहीं है, तो इसे सबसे पहले initialValue()
तरीके के कॉल से मिली वैल्यू पर शुरू किया जाता है.
रिटर्न | |
---|---|
T |
इस invocation-local की, फ़िलहाल चल रही प्रक्रिया की कॉपी. |
सुरक्षित तरीके
initialValue
protected T initialValue ()
इस शुरू करने के लोकल वैरिएबल के लिए मौजूदा शुरू करने वाले की "शुरुआती वैल्यू" लौटाता है. इस
तरीके को तब लागू किया जाएगा, जब कोड को पहली बार get()
तरीके से वैरिएबल को ऐक्सेस करने के लिए, इस्तेमाल किया जाएगा. इस तरीके को हर बार एक से ज़्यादा बार इस्तेमाल नहीं किया जा सकता.
इस तरीके से सिर्फ़ null
दिखता है. हालांकि, InvocationLocal
को सब-क्लास करके और इस तरीके को बदलकर, इसे बदला जा सकता है.
रिटर्न | |
---|---|
T |
कॉल के दायरे वाले इस वैरिएबल की शुरुआती वैल्यू |