您好,歡迎來到賦能網(wǎng)!

ynchronized(tring)_java培訓(xùn)

賦能網(wǎng) 2023-06-13 285

synchronized(string)

String是java中的一種特殊類型,String在jdk中創(chuàng)建后共享常量池,即使在jdk1.8之后實(shí)現(xiàn)了不同的功能,它的功能也是相似的。

利用這個(gè)特征,可以使用String作為同步鎖。例如,在更新用戶信息時(shí),可以使用用戶的名稱作為同步鎖,不同的用戶可以使用不同的鎖來提高并發(fā)性能。這個(gè)特征擴(kuò)展適當(dāng)?shù)膱鼍胺浅6唷?/p>

ynchro<em></em>nized(tring)_<a href=java培訓(xùn)" title="ynchronized(tring)_java培訓(xùn)">

在Jvm中具有String常量池緩存的功能

   String s1 = “a”;

   String s2 = “a”;

ynchro<em></em>nized(tring)_java培訓(xùn)

   System.out.println(s1 == s2);//true

字符串常量池中的字符串只有個(gè)一個(gè)“a”,所以此時(shí)鎖的是同一個(gè)對(duì)象。

只不過正因?yàn)镾tring的特殊性,java還包含了更多的與字符串相關(guān)的工具類,如StringBuffer、StringBuilder等。而且字符串映射的值是常量,但是String本身是可以new出來類似一個(gè)變量使用的。這些情況就會(huì)影響線程的同步了。

想要了解跟多關(guān)于Java培訓(xùn)課程內(nèi)容歡迎關(guān)注賦能網(wǎng)Java培訓(xùn),賦能網(wǎng)除了這些技術(shù)文章外還有免費(fèi)的高質(zhì)量Java培訓(xùn)課程視頻供廣大學(xué)員下載學(xué)習(xí)。

本文鏈接:

本文章“ynchronized(tring)_java培訓(xùn)”已幫助 285 人

免責(zé)聲明:本信息由用戶發(fā)布,本站不承擔(dān)本信息引起的任何交易及知識(shí)產(chǎn)權(quán)侵權(quán)的法律責(zé)任!

本文由賦能網(wǎng) 整理發(fā)布。了解更多培訓(xùn)機(jī)構(gòu)》培訓(xùn)課程》學(xué)習(xí)資訊》課程優(yōu)惠》課程開班》學(xué)校地址等機(jī)構(gòu)信息,可以留下您的聯(lián)系方式,讓課程老師跟你詳細(xì)解答:
咨詢熱線:4008-569-579

如果本頁不是您要找的課程,您也可以百度查找一下: