1. MySQL邏輯架構(gòu) 1.1 連接管理與安全性 每個客戶端連接都會在服務(wù)器進(jìn)程中擁有一個線程, 這個連接的查詢只會在這個單獨的線程中執(zhí)行, MySQL服務(wù)維護(hù)一個線程池 ...
本文將介紹Java并發(fā)包中與鎖相關(guān)的API和組件, 以及這些API和組件的使用方式和實現(xiàn)細(xì)節(jié) 1. Lock接口 鎖是用來控制多個線程訪問共享資源的方式, 像獨占鎖, 讀寫鎖...
1. 線程簡介 1.1 什么是線程 線程是現(xiàn)代操作系統(tǒng)能夠進(jìn)行調(diào)度和運算的基本單位 在一個進(jìn)程中可以創(chuàng)建多個線程, 這些線程都有各自的計數(shù)器, 堆棧和局部變量等屬性, 并且能...
1. Java內(nèi)存模型基礎(chǔ) 1.1 并發(fā)編程的兩個關(guān)鍵問題 線程之間如何通信, 通信是指線程之間如何交換信息, 一般有兩種方式共享內(nèi)存, 通過讀寫內(nèi)存公共狀態(tài)進(jìn)行隱式通信, ...
1. volatile的應(yīng)用 volatile是輕量級synchronized, 保證了共享變量的可見性, 可見性的意思當(dāng)一個線程修改一個共享變量時, 其他線程能讀取到這個修...
1. 上下文切換 即使單核CPU也支持多線程運行代碼, CPU會給每個線程分配CPU時間片, 時間片一般是幾十毫秒, 然后CPU通過時間片分配算法不停地切換線程, 循環(huán)執(zhí)行任...
對的呢 springboot2.1.3
Spring源碼8. prepareContext()準(zhǔn)備應(yīng)用上下文上篇回顧 上一篇SpringBootExceptionReporter異常上報中分析了springboot如何處理啟動過程中的異常 目錄 1. 準(zhǔn)備容器prepareCont...
目錄 1. 注冊BeanDefinition 2. 預(yù)初始化單例Bean 2.1 AbstractBeanFactory獲取或者創(chuàng)建Bean實例 2.2 AbstractAu...
目錄 1. ConfigurationClassPostProcessor掃描和注冊BeanDefinition 2. 解析配置類 ConfigurationClassPar...
目錄 1. 初始化SpringApplication實例 2. 發(fā)布啟動事件ApplicationStartingEvent 3. 封裝命令行參數(shù)DefaultApplica...
上篇回顧 在上一篇refreshContext()刷新應(yīng)用上下文中, 我們主要分析了spring容器的刷新 首先更新刷新狀態(tài) 然后處理beanFactory的后置處理器, 用...
上篇回顧 上一篇prepareContext()準(zhǔn)備應(yīng)用上下文中分析了spring容器的準(zhǔn)備, 共計執(zhí)行了如下8步: 統(tǒng)一了ApplicationContext和Applic...
上篇回顧 上一篇SpringBootExceptionReporter異常上報中分析了springboot如何處理啟動過程中的異常 目錄 1. 準(zhǔn)備容器prepareCont...
上篇回顧 createApplicationContext()創(chuàng)建應(yīng)用上下文 獲取并打印Spring啟動過程中的異常信息 FailureAnalyzers類源碼 下一篇 pr...
上篇回顧 上一篇printBanner()打印Banner中非了springboot如何打印Banner 目錄 1. 創(chuàng)建應(yīng)用上下文 2. DefaultResourceLo...
上篇回顧 上一篇prepareEnvironment()準(zhǔn)備環(huán)境主要分析了StandardServletEnvironment的創(chuàng)建, 以及系統(tǒng)屬性, 環(huán)境變量, 配置文件等...
上篇回顧 上一篇封裝命令行參數(shù)DefaultApplicationArguments主要作用是處理啟動類main函數(shù)的參數(shù), 將其封裝為一個DefaultApplicatio...
上篇回顧 上一篇發(fā)布啟動事件ApplicationStartingEvent, 我們分析springboot發(fā)布了啟動事件, 其執(zhí)行步驟如下 首先調(diào)用getRunListen...
一. 接口與抽象類 1.共同點 都是上層抽象,為了繼承和實現(xiàn)而存在的 都不能被實例化(可以使用匿名內(nèi)部類實例化),但是可以聲明一個引用 都可以包含抽象方法 2. 接口 2.1...