BlockingQueue 阻塞隊(duì)列么抗,顧名思義苹祟,首先它是一個(gè)隊(duì)列砸抛,而一個(gè)隊(duì)列在數(shù)據(jù)結(jié)構(gòu)中所起的作用大致如下圖所示: 從上圖我們可以很清楚看到评雌,通過(guò)一個(gè)共享的隊(duì)列,可以使得數(shù)據(jù)...
BlockingQueue 阻塞隊(duì)列么抗,顧名思義苹祟,首先它是一個(gè)隊(duì)列砸抛,而一個(gè)隊(duì)列在數(shù)據(jù)結(jié)構(gòu)中所起的作用大致如下圖所示: 從上圖我們可以很清楚看到评雌,通過(guò)一個(gè)共享的隊(duì)列,可以使得數(shù)據(jù)...
LSM簡(jiǎn)介 Log Structured Merge Tree锰悼,下面簡(jiǎn)稱 LSM柳骄。2006年团赏,Google 發(fā)表了 BigTable[https://static.googl...
簡(jiǎn)介 整理一些面試時(shí)線程池常問(wèn)的問(wèn)題 1.核心線程如何一直被悖活 答案:由于任務(wù)都是存在阻塞隊(duì)列中,Worker從隊(duì)列拿任務(wù)時(shí)通過(guò)阻塞隊(duì)列take()方法讓線程等待舔清,使得Wor...
worker線程 線程池的每一個(gè)線程其實(shí)就是一個(gè)封裝好的worker丝里。 Worker又繼承了AQS,通過(guò)鎖來(lái)保證線程安全1.lock方法一旦獲取了獨(dú)占鎖体谒,表示當(dāng)前線程正在執(zhí)行...
前言 由于線程池涉及的知識(shí)點(diǎn)比較多杯聚,會(huì)以上中下三篇文章來(lái)敘述;當(dāng)我們面試時(shí)抒痒,如果遇到了面試官讓你說(shuō)一下線程池幌绍,我們可以先講一下線程池的核心思想:1.復(fù)用線程,降低線程創(chuàng)建與銷...
簡(jiǎn)介 阿里面試的時(shí)候經(jīng)常會(huì)問(wèn)到高并發(fā)故响,解決并發(fā)的方案就是cas傀广,也是AtomicLong這些原子類,那么如果問(wèn)你除了Atomic這些原子類之外的?解法呢彩届? cas java....
前言 在一線開(kāi)發(fā)中伪冰,需要快速完成業(yè)務(wù)需求開(kāi)發(fā),此時(shí)不可避免的出現(xiàn)if...else..這種硬編碼判斷邏輯樟蠕,當(dāng)代碼包含大量這種結(jié)構(gòu)時(shí)會(huì)降低代碼的可讀性贮聂,擴(kuò)展性,并且不易維護(hù)寨辩,策...
一.前言 在日常的開(kāi)發(fā)中吓懈,經(jīng)常需要對(duì)方法參數(shù)進(jìn)行校驗(yàn)(非空、長(zhǎng)度等)靡狞。如果采用hardcode去校驗(yàn)(if..else..)耻警,會(huì)造成代碼冗余,復(fù)用性低耍攘,導(dǎo)致維護(hù)成本比較高榕栏。借...