Ano ang gamit ng ThreadLocal?
Ano ang gamit ng ThreadLocal?

Video: Ano ang gamit ng ThreadLocal?

Video: Ano ang gamit ng ThreadLocal?
Video: DIY COWRIE SHELL ANKLET + HOW TO MAKE AN ADJUSTABLE SQUARE KNOT | The cutest anklet EVERRRRRR ๐Ÿ˜ 2024, Mayo
Anonim

Java Ginagamit ang ThreadLocal upang lumikha ng mga lokal na variable ng thread. Alam namin na ang lahat ng mga thread ng isang Object ay nagbabahagi ng mga variable nito, kaya ang variable ay hindi ligtas sa thread. Maaari naming gamitin ang pag-synchronize para sa kaligtasan ng thread ngunit kung gusto naming maiwasan ang pag-synchronize, maaari naming gamitin ang ThreadLocal variable.

Kaya lang, para saan ang ThreadLocal class na ginagamit?

Java ThreadLocal na klase nagbibigay thread-lokal mga variable. Binibigyang-daan ka nitong lumikha ng mga variable na maaari lamang basahin at isulat ng parehong thread. Kung ang dalawang thread ay nagpapatupad ng parehong code at ang code na iyon ay may reference sa a ThreadLocal variable pagkatapos ay hindi makita ng dalawang thread ang lokal na variable ng bawat isa.

Sa tabi sa itaas, bakit static at final ang ThreadLocal? Tulad ng nakikita natin, ang static halimbawa ng ThreadLocal ay ginagamit lamang bilang search key. Ang halaga nito ay hindi mababago dahil ito ay idineklara pangwakas . Ang ThreadLocal instance ay ganap na thread-safe dahil ito ay talagang read-only kaya ang synchronization ay hindi requited. Ano ang potensyal na hindi thread-safe ay ang target na Bagay.

Katulad nito, maaari mong itanong, paano gumagana ang ThreadLocal sa Java?

Ang Java ThreadLocal class ay nagbibigay-daan sa iyo upang lumikha ng mga variable na maaari lamang basahin at isulat ng parehong thread. Kaya, kahit na ang dalawang thread ay nagpapatupad ng parehong code, at ang code ay may reference sa pareho ThreadLocal variable, hindi makikita ng dalawang thread ang isa't isa ThreadLocal mga variable.

Bakit static ang ThreadLocal?

Sa maikling salita, ThreadLocal bagay na gumagana tulad ng isang key-value map. static pangwakas ThreadLocal Ang mga variable ay ligtas sa thread. static gumagawa ng ThreadLocal variable na magagamit sa maraming klase para sa kani-kanilang thread lamang. ito ay isang uri ng Global variable dekaration ng kani-kanilang lokal na thread mga variable sa maraming klase.

Inirerekumendang: