為了提高系統(tǒng)的資源利用率,促使了進(jìn)程,線(xiàn)程的出現(xiàn)。進(jìn)程和線(xiàn)程提高了系統(tǒng)CPU利用率的同時(shí),又引出了一些其他的問(wèn)題。這里僅討論線(xiàn)程安全性的問(wèn)題,因...
為什么需要線(xiàn)程池 在生產(chǎn)環(huán)境中,為每個(gè)任務(wù)都分配一個(gè)線(xiàn)程,這種方法存在一些缺陷,尤其是當(dāng)需要?jiǎng)?chuàng)建大量的線(xiàn)程時(shí):線(xiàn)程生命周期開(kāi)銷(xiāo)非常高:線(xiàn)程的創(chuàng)建...
AbstractQueuedSynchronizer類(lèi)(簡(jiǎn)稱(chēng)AQS)依賴(lài)于內(nèi)部的FIFO隊(duì)列,提供了一個(gè)可以實(shí)現(xiàn)阻塞鎖和同步機(jī)制的框架。依賴(lài)于A...
Mybatis中使用XML文件的地方主要有兩個(gè)1、mybatis的配置文件;2、mybatis的各個(gè)mapper文件; mybatis配置文件解...
Mapper代理類(lèi)的生成過(guò)程 在MyBatis中我們是通過(guò)SqlSession.getMapper(SomeInstance.class)方法獲...
背景介紹 項(xiàng)目中有使用到com.github.dreamroute excel-helper這個(gè)工具來(lái)輔助Excel文件的解析,出錯(cuò)時(shí)的代碼是這...
MDC是SLF4J中的一個(gè)類(lèi),通過(guò)MDC我們可以很方便的實(shí)現(xiàn)同一個(gè)線(xiàn)程內(nèi)(包括父線(xiàn)程和子線(xiàn)程之間)的日志的追蹤。對(duì)于Web項(xiàng)目來(lái)講,在MDC的幫...
代理模式算是我們平時(shí)項(xiàng)目中接觸的比較多的一種模式,最常見(jiàn)的包括:Spring AOP,RPC框架,Mybatis中插件實(shí)現(xiàn)方式,JDK中Prox...
Spring框架中也實(shí)現(xiàn)了類(lèi)似EventBus中的事件監(jiān)聽(tīng)方法。Spring中的很多功能都有賴(lài)于此實(shí)現(xiàn),讓我們一起來(lái)學(xué)習(xí)一下。 基于Applic...