原创 4年博主寫博客的折騰之路

4年博主寫博客的折騰之路 一千個人眼中有一千個哈姆雷特,選擇自己喜歡的就好!以下全是個人的感受,不喜勿噴。 導讀 截止到2022年6月12日,個人寫博客已經4年。 今天突然想聊聊這四年來我寫博客所使用的各種網站和工具。 在博客編寫上所

原创 全局鎖、表鎖、行鎖

全局鎖、表鎖和行鎖 MySQL45講基礎篇:根據加鎖的範圍,MySQL裏面的鎖大致分爲全局鎖、表鎖、行鎖三類 全局鎖 實現:對整個數據庫實例進行加鎖,使用FTWRL. Flush table with read lock 效果:整個庫

原创 一條更新SQL的內部執行及日誌模塊

一條更新SQL的內部執行 學習MySQL實戰45講,非常推薦學 還是老圖: 上文複習 在執行查詢語句的時候,會執行連接器(總要連上才能搞事情),然後去查詢緩存(MySQL8+刪除了),有數據返回,沒數據進行分析器-優化器-執行器-執行引

原创 一條Sql的執行過程

一條sql內部是如何執行的: 學習MySQL實戰45專欄 sql中的內部執行圖: 可以分爲兩部分:server和存儲引擎 server層包含: 連接器、分析器、優化器、執行器,涵蓋了MySQL大多數核心服務功能,以及所有的內置函數(

原创 關於Synchronized你瞭解多少?

1.說一說自己對於 synchronized 關鍵字的瞭解 synchronized是解決多線程之間訪問資源的同步性,synchronized關鍵字可以保證被他修飾的資源在任何時刻只有一個線程訪問。 在Java6之前,synchronize

原创 擴容新生代爲什麼能夠提高GC的效率

擴容新生代爲什麼能夠提高GC的效率 該文章默認讀者對JVM的基礎有所瞭解 在學習JVM的時候,遇到了個人感覺比較有意思的問題,通過視頻學習整理了一下。 先來上圖: 大部分情況下,對象都會進入Eden區進行分配,當該空間滿了以後,進行輕

原创 JUC之文章整理以及彙總

JUC文章彙總 JUC部分將學習《JUC併發編程的藝術》和《尚硅谷-大廠必備技術之JUC併發編程》進行博客的整理,各文章中也會不斷的完善和豐富。 JUC概述 JUC的視頻學習和JUC併發編程的藝術閱讀片段 JUC之Lock接口以

原创 JUC之Fork/Join框架

Fork/Join框架和異步 定義: Fork/Join框架是Java 7提供的一個用於並行執行任務的框架,是一個把大任務分割成若干個小任務,最終彙總每個小任務結果後得到大任務結果的框架。類似於遞歸或者分而治之的思想。 引用《Java併發編

原创 JUC之線程池的實現原理以及拒絕策略

線程池實現原理 向線程池提交任務後,線程池如何來處理這個任務,之前我們瞭解了7個參數,我們通過這些參數來串聯其線程池的實現原理。 1、在創建了線程池後,開始等待請求 2、當調用execute()方法添加請求任務時: 如果正在運行的線程

原创 JUC之線程池基礎與簡單源碼分析

線程池 定義和方法 線程池的工作時控制運行的線程數量,處理過程中將任務放入隊列,然後在線程創建後啓動這些任務,如果線程數量超過了最大數量,超出數量的線程排隊等候,等待其他線程執行完成,再從隊列中取出任務來執行。 特點: 線程複用,控制最大

原创 JUC之讀寫鎖問題

讀寫鎖 讀寫鎖在同一時刻可以允許多個讀線程訪問,但是在寫線程訪問時,所有的讀線程和其他寫線程均被阻塞。讀寫鎖維護了一對鎖,一個讀鎖和一個寫鎖,通過分離讀鎖和寫鎖,使得併發性相比一般的排他鎖有了很大提升。 讀操作可以多個線程,寫操作只能

原创 JUC之阻塞隊列(BlockingQueue)基礎

阻塞隊列 阻塞隊列(BlockingQueue)是一個支持兩個附加操作的隊列。這兩個附加的操作支持阻塞的插入和移除方法。 阻塞隊列常用於生產者和消費者的場景: 當隊列爲空的,從隊列中獲取元素的操作將會阻塞; 當隊列爲滿的,從隊列中添加元

原创 JUC文章合集

JUC文章彙總 JUC部分將學習《JUC併發編程的藝術》和《尚硅谷-大廠必備技術之JUC併發編程》進行博客的整理,各文章中也會不斷的完善和豐富。 JUC概述 JUC的視頻學習和JUC併發編程的藝術閱讀片段 JUC之Lock接口以

原创 JUC之線程間定製化通信

線程通信之定製化 之前文章中寫了下Condition的使用,這裏我們詳細說下其中的用法: 首先使用Condition需要實例化Lock private Lock lock = new ReentrantLock(); //創建鎖 使用

原创 JUC之Callable接口回顧和JUC輔助類

Callable接口和JUC輔助類 Callable接口: 回顧: 創建線程的四種方式: 繼承Thread 實現runnable接口 實現callable接口 使用線程池 之前的文章:多線程編程1-定義理解與三種實現方式 Runnabl