線程安全類
創(chuàng)新互聯(lián)建站專注于索縣網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠為您提供索縣營銷型網(wǎng)站建設(shè),索縣網(wǎng)站制作、索縣網(wǎng)頁設(shè)計(jì)、索縣網(wǎng)站官網(wǎng)定制、小程序制作服務(wù),打造索縣網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供索縣網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。在集合框架中,有些類是線程安全的,這些都是jdk1.1中的出現(xiàn)的。在jdk1.2之后,就出現(xiàn)許許多多非線程安全的類。 下面是這些線程安全的同步的類:
vector:就比arraylist多了個(gè)同步化機(jī)制(線程安全),因?yàn)樾瘦^低,現(xiàn)在已經(jīng)不太建議使用。在web應(yīng)用中,特別是前臺(tái)頁面,往往效率(頁面響應(yīng)速度)是優(yōu)先考慮的。
statck:堆棧類,先進(jìn)后出
hashtable:就比hashmap多了個(gè)線程安全
除了這些之外,其他的集合大都是非線程安全的類和接口。
線程安全的類其方法是同步的,每次只能一個(gè)訪問。是重量級(jí)對(duì)象,效率較低。
其他:
1. hashtable跟hashmap的區(qū)別
hashtable是線程安全的,即hashtable的方法都提供了同步機(jī)制;hashmap不是線程安全的,即不提供同步機(jī)制 ;hashtable不允許插入空值,hashmap允許!
2. 多線程并發(fā)修改一 個(gè)集合怎么辦?
用老的Vector/Hashtable類
StringBuffer是線程安全,而StringBuilder是線程不安全的。對(duì)于安全與不安全沒有深入的理解情況下,易造成這樣的錯(cuò)覺,如果對(duì)于StringBuffer的操作均是線程安全的,然而,Java給你的保證的線程安全,是說它的方法是執(zhí)行是排它的,而不是對(duì)這個(gè)對(duì)象本身的多次調(diào)用情況下,還是安全的。看看下邊的例子,在StringBufferTest中有一個(gè)數(shù)據(jù)成員contents它是用來擴(kuò)展的,它的每一次append是線程安全的,但眾多次append的組合并不是線程安全的,這個(gè)輸出結(jié)果不是太可控的,但如果對(duì)于log和getContest方法加關(guān)鍵字synchronized,那么結(jié)果就會(huì)變得非常條理,如果換成StringBuider甚至是append到一半,它也會(huì)讓位于其它在此基礎(chǔ)上操作的線程
以上所述是小編給大家介紹的Java線程安全的常用類_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)創(chuàng)新互聯(lián)網(wǎng)站的支持!
當(dāng)前名稱:Java線程安全的常用類_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理-創(chuàng)新互聯(lián)
文章轉(zhuǎn)載:http://jinyejixie.com/article34/dchsse.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站維護(hù)、網(wǎng)站收錄、全網(wǎng)營銷推廣、網(wǎng)站建設(shè)、虛擬主機(jī)、品牌網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容