volatile關(guān)鍵字經(jīng)常在并發(fā)編程中使用,其特性是保證可見性以及有序性,但是關(guān)于volatile的使用仍然要小心,這需要明白volatile關(guān)鍵字的特性及實(shí)現(xiàn)的原理,這也是...
前言 利用線程池和CountDownLatch,多線程并發(fā)處理批量數(shù)據(jù),實(shí)現(xiàn)多線程事務(wù)回滾,事務(wù)補(bǔ)償。 begin設(shè)置為1,用于發(fā)布開始命令,如果需要開始,則begin.co...
前言 隨著分布式服務(wù)架構(gòu)的流行與普及,原來在單體應(yīng)用中執(zhí)行的多個(gè)邏輯操作,現(xiàn)在被拆分成了多個(gè)服務(wù)之間的遠(yuǎn)程調(diào)用。雖然服務(wù)化為我們的系統(tǒng)帶來了水平伸縮的能力,然而隨之而來挑戰(zhàn)就...
一 .兩種異常結(jié)構(gòu) java中的異常和錯(cuò)誤都繼承自java.lang.Throwable 在異常處理的時(shí)候,都會接觸到受檢異常(checked exception)和非受檢異...
為什么Vector和Collections.SynchronizedList的get方法要加鎖呢? 1. 線程不安全的ArrayList 為什么說ArrayList是線程不安...
一、相同點(diǎn) 這個(gè)兩個(gè)注解都是用來完成組件的裝配的,即利用依賴注入(DI),完成對IOC容器當(dāng)中各個(gè)組件之間依賴的裝配賦值。 二、不同點(diǎn) 2.1 來源不同 2.1.1 @Res...
策略模式目的是取代if...else...的寫法,但是策略模式一般需要定義一個(gè)接口+多個(gè)實(shí)現(xiàn)類,然后使用枚舉類(實(shí)現(xiàn)享元模式)或者M(jìn)ap(實(shí)現(xiàn)享元模式)來維護(hù)type:實(shí)現(xiàn)類...
從3.1開始,Spring引入了對Cache的支持。其使用方法和原理都類似于Spring對事務(wù)管理的支持。Spring Cache是作用在方法上的,其核心思想是這樣的:當(dāng)我們...
上一篇 <<<緩存策略匯總[http://m.itdecent.cn/p/e0942ce411dc]下一篇 >>>服務(wù)的隔離、降級和熔斷[https://www.jia...
今天,我們來聊一道常見的考題,也出現(xiàn)在騰訊面試的三面環(huán)節(jié),非常有意思。具體的題目如下: 文件中有40億個(gè)QQ號碼,請?jiān)O(shè)計(jì)算法對QQ號碼去重,相同的QQ號碼僅保留一個(gè),內(nèi)存限制...