ThreadLocal нені пайдаланады?
ThreadLocal нені пайдаланады?

Бейне: ThreadLocal нені пайдаланады?

Бейне: ThreadLocal нені пайдаланады?
Бейне: Трещины на пятках /Грибок на ногах 2024, Сәуір
Anonim

Java ThreadLocal ағынды жергілікті айнымалы мәндерді жасау үшін пайдаланылады. Біз Объекттің барлық ағындары оның айнымалы мәндерін бөлісетінін білеміз, сондықтан айнымалы ағын қауіпсіз емес. Біз ағынның қауіпсіздігі үшін синхрондауды пайдалана аламыз, бірақ синхрондаудан аулақ болғымыз келсе, ThreadLocal айнымалы мәндерін пайдалана аламыз.

Сонымен, ThreadLocal класы не үшін пайдаланылады?

Java ThreadLocal сыныбы қамтамасыз етеді жіп-жергілікті айнымалылар. Ол тек бір ағынмен оқуға және жазуға болатын айнымалы мәндерді жасауға мүмкіндік береді. Егер екі ағын бірдей кодты орындаса және бұл кодта a сілтемесі болса ThreadLocal айнымалы болса, екі ағын бір-бірінің жергілікті айнымалы мәнін көре алмайды.

Жоғарыда айтылғандай, ThreadLocal неге статикалық және соңғы болып табылады? Көріп отырғанымыздай, статикалық мысалы ThreadLocal іздеу кілті ретінде ғана пайдаланылады. Оның мәнін өзгерту мүмкін емес, себебі ол жарияланған финал . The ThreadLocal данасы толығымен ағынмен қауіпсіз, себебі ол шын мәнінде тек оқуға арналған, сондықтан синхрондау талап етілмейді. Ықтимал ағынға қауіпсіз емес нәрсе мақсатты нысан болып табылады.

Сол сияқты, сіз ThreadLocal Java-да қалай жұмыс істейді деп сұрай аласыз.

The Java ThreadLocal сынып тек бір ағынмен оқуға және жазуға болатын айнымалы мәндерді жасауға мүмкіндік береді. Осылайша, екі ағын бірдей кодты орындаса да және кодта бірдей сілтеме болса ThreadLocal айнымалы болса, екі ағын бір-бірін көре алмайды ThreadLocal айнымалылар.

ThreadLocal неліктен статикалық?

Қысқаша, ThreadLocal нысан кілт-мән картасы сияқты жұмыс істейді. статикалық финал ThreadLocal айнымалылар жіп қауіпсіз. статикалық жасайды ThreadLocal айнымалы мән тек сәйкес ағын үшін бірнеше сыныптарда қол жетімді. бұл сәйкес Жаһандық айнымалы декарацияның бір түрі жергілікті жіп бірнеше кластардағы айнымалылар.

Ұсынылған: