Quin és l'ús de ThreadLocal?
Quin és l'ús de ThreadLocal?

Vídeo: Quin és l'ús de ThreadLocal?

Vídeo: Quin és l'ús de ThreadLocal?
Vídeo: Рынок IT в 2021. Intel и конкуренты. Игры от Netflix. [MJC News #8] 2024, Maig
Anonim

Java ThreadLocal s'utilitza per crear variables locals de fil. Sabem que tots els fils d'un objecte comparteixen les seves variables, de manera que la variable no és segura. Podem utilitzar la sincronització per a la seguretat del fil, però si volem evitar la sincronització, podem utilitzar variables ThreadLocal.

Així doncs, per a què s'utilitza la classe ThreadLocal?

Java Classe ThreadLocal proporciona fil local les variables. Us permet crear variables que només es poden llegir i escriure pel mateix fil. Si dos fils estan executant el mateix codi i aquest codi té una referència a a ThreadLocal variable, llavors els dos fils no poden veure la variable local l'un de l'altre.

Al costat de dalt, per què ThreadLocal és estàtic i final? Com podem veure, el estàtica en lloc de ThreadLocal s'utilitza només com a clau de cerca. El seu valor no es pot canviar perquè està declarat final . El ThreadLocal La instància és totalment segura per a fils perquè realment és només de lectura, de manera que no es requereix la sincronització. El que potencialment no és segur per a fils és l'objecte objectiu.

De la mateixa manera, us podeu preguntar com funciona ThreadLocal a Java?

El Java ThreadLocal class us permet crear variables que només es poden llegir i escriure pel mateix fil. Així, fins i tot si dos fils estan executant el mateix codi, i el codi té una referència al mateix ThreadLocal variable, els dos fils no es veuen mútuament ThreadLocal les variables.

Per què ThreadLocal és estàtic?

En resum, ThreadLocal L'objecte funciona com un mapa clau-valor. estàtica final ThreadLocal les variables són segures per a fils. estàtica fa el ThreadLocal variable disponible en diverses classes només per al fil respectiu. és una mena de decaració variable global de la respectiva fil local variables en diverses classes.

Recomanat: