InvocationLocal
public
class
InvocationLocal
extends Object
java.lang.Object | |
↳ | com.android.tradefed.invoker.logger.InvocationLocal<T> |
Bu sınıf, çağrı kapsamı değişkenleri sağlar.
Mekanizma, ThreadLocal
'e benzer şekilde çalışır. Bu değişkenler, koddaki normal benzerlerinden farklıdır. Birine erişen (get
yöntemi aracılığıyla) çağrıda, değişkenin bağımsız olarak başlatılmış kendi kopyası bulunur. InvocationLocal
örnekleri, genellikle durumu bir çağrıyla ilişkilendirmek isteyen sınıflardaki özel statik alanlardır.
Her çağrı, çağrı devam ettiği ve InvocationLocal
örneğine erişilebildiği sürece çağrı kapsamlı bir değişkenin kopyasıyla ilişkilendirilir. Bir çağrı tamamlandıktan sonra, çağrıya özgü örneklerin tüm kopyaları (bu kopyalara başka referanslar olmadığı sürece) çöp toplama işlemine tabi tutulur.
Çağırma işlemi devam ederken artık referans verilmeyen ThreadLocal
örneklerinin, çöp toplayıcı tarafından toplanmadığını unutmayın. Bu nedenle, sınırsız şekilde büyüyebilecekleri için yerel veya statik olmayan örnekler oluşturmak önerilmez.
Uyarı: invocation-locals, aynı sorunların çoğuna sahip olan süslü küresel değişkenler olduğundan bu sınıfı dikkatli kullanın.
Özet
Herkese açık kurucular | |
---|---|
InvocationLocal()
|
Herkese açık yöntemler | |
---|---|
final
T
|
get()
Şu anda yürütülmekte olan çağrının bu çağrı yerel değişkeninin kopyasını döndürür. |
Korunan yöntemler | |
---|---|
T
|
initialValue()
Bu çağrı yerel değişkeni için geçerli çağrının "ilk değerini" döndürür. |
Herkese açık kurucular
InvocationLocal
public InvocationLocal ()
Herkese açık yöntemler
get
public final T get ()
Şu anda yürütülmekte olan çağrının bu çağrı yerel değişkeninin kopyasını döndürür. Değişkenin geçerli çağrı için değeri yoksa ilk olarak initialValue()
yönteminin çağrısı tarafından döndürülen değerle başlatılır.
İlerlemeler | |
---|---|
T |
Şu anda yürütülmekte olan çağrının bu çağrının yerel kopyası. |
Korunan yöntemler
initialValue
protected T initialValue ()
Bu çağrı yerel değişkeni için geçerli çağrının "ilk değerini" döndürür. Bu yöntem, çağrı bağlamında yürütülen kod değişkene get()
yöntemiyle ilk kez eriştiğinde çağrılır. Bu yöntemin, çağrı başına en fazla bir kez çağrılacağı garanti edilir.
Bu uygulama yalnızca null
değerini döndürür ancak InvocationLocal
sınıfını alt sınıflandırıp bu yöntemi geçersiz kılarak değiştirilebilir.
İlerlemeler | |
---|---|
T |
bu çağrı kapsamlı değişkenin başlangıç değeri |