Jaké je použití ThreadLocal?
Jaké je použití ThreadLocal?

Video: Jaké je použití ThreadLocal?

Video: Jaké je použití ThreadLocal?
Video: What is the purpose of the class java lang ThreadLocal explain using demo project ? 2024, Prosinec
Anonim

Jáva ThreadLocal se používá k vytváření lokálních proměnných vlákna. Víme, že všechna vlákna objektu sdílejí své proměnné, takže proměnná není bezpečná pro vlákna. Pro bezpečnost vláken můžeme použít synchronizaci, ale pokud se chceme synchronizaci vyhnout, můžeme použít proměnné ThreadLocal.

Jen tak, k čemu se používá třída ThreadLocal?

Jáva Třída ThreadLocal poskytuje vlákno-místní proměnné. Umožňuje vám vytvářet proměnné, které lze číst a zapisovat pouze stejným vláknem. Pokud dvě vlákna provádějí stejný kód a tento kód má odkaz na a ThreadLocal proměnná, pak obě vlákna nemohou navzájem vidět místní proměnnou.

Kromě výše uvedeného, proč je ThreadLocal statický a konečný? Jak můžeme vidět, statický příklad ThreadLocal se používá pouze jako vyhledávací klíč. Jeho hodnotu nelze změnit, protože je deklarována finále . The ThreadLocal instance je zcela bezpečná pro vlákna, protože je opravdu jen pro čtení, takže synchronizace není vyžadována. Co potenciálně není bezpečné pro vlákna, je cílový objekt.

Podobně se můžete ptát, jak ThreadLocal funguje v Javě?

The Java ThreadLocal třída umožňuje vytvářet proměnné, které lze číst a zapisovat pouze stejným vláknem. Tedy i když dvě vlákna provádějí stejný kód a kód má odkaz na stejný ThreadLocal proměnná, dvě vlákna navzájem nevidí ThreadLocal proměnné.

Proč je ThreadLocal statický?

Ve zkratce, ThreadLocal objekt funguje jako mapa klíč-hodnota. statický finále ThreadLocal proměnné jsou bezpečné pro vlákna. statický dělá ThreadLocal proměnná dostupná ve více třídách pouze pro příslušné vlákno. je to jakási Globální proměnná dekarace příslušného místní vlákno proměnné napříč více třídami.

Doporučuje: