La ce folosește ThreadLocal?
La ce folosește ThreadLocal?

Video: La ce folosește ThreadLocal?

Video: La ce folosește ThreadLocal?
Video: What is the purpose of the class java lang ThreadLocal explain using demo project ? 2024, Noiembrie
Anonim

Java ThreadLocal este folosit pentru a crea variabile locale de fir. Știm că toate firele de execuție ale unui obiect împărtășesc variabilele sale, deci variabila nu este sigură pentru fire. Putem folosi sincronizarea pentru siguranța firelor, dar dacă dorim să evităm sincronizarea, putem folosi variabile ThreadLocal.

Doar așa, pentru ce este folosită clasa ThreadLocal?

Java Clasa ThreadLocal prevede fir-local variabile. Vă permite să creați variabile care pot fi citite și scrise numai de același fir. Dacă două fire execută același cod și acel cod are o referință la a ThreadLocal variabilă, atunci cele două fire nu pot vedea variabila locală una a celuilalt.

Alături de mai sus, de ce ThreadLocal este static și final? După cum putem vedea, static instanță de ThreadLocal este folosit doar ca cheie de căutare. Valoarea sa nu poate fi modificată deoarece este declarată final . The ThreadLocal instanța este complet sigură pentru fire, deoarece este într-adevăr doar pentru citire, astfel încât sincronizarea nu este necesară. Ceea ce nu este potențial sigur pentru fire este obiectul țintă.

În mod similar, vă puteți întreba cum funcționează ThreadLocal în Java?

The Java ThreadLocal class vă permite să creați variabile care pot fi citite și scrise doar de același fir. Astfel, chiar dacă două fire execută același cod, iar codul are o referință la același ThreadLocal variabilă, cele două fire nu se pot vedea unul pe altul ThreadLocal variabile.

De ce este ThreadLocal static?

În scurt, ThreadLocal obiectul funcționează ca o hartă cheie-valoare. static final ThreadLocal variabilele sunt sigure pentru fire. static face ca ThreadLocal variabilă disponibilă în mai multe clase numai pentru firul respectiv. este un fel de Global variabilă decaration a respectivului fir local variabile din mai multe clase.

Recomandat: