原创 Java多線程(4)——synchronized——線程安全、synchronized的基本使用

目錄 1.線程安全 2.synchronized的基本使用 2.1 同步代碼塊 2.2 同步方法 1.線程安全 什麼叫線程安全? 如果有多個線程在同時運行,而這些線程可能會同時運行這段代碼。程序每次運行結果和單線程運行的結果是一樣 的,而

原创 Java集合(22)——併發集合(10)——阻塞隊列(3)——SynchronousQueue源碼分析——待完成

1. SynchronousQueue:一個不存儲元素的阻塞隊列,每個插入操作必須等到另一個線程調用移除操作,否則插入操作一直處於阻塞狀態,吞吐量通常要高於                                

原创 Java集合(20)——併發集合(8)——阻塞隊列(1)——ArrayBlockingQueue源碼分析

目錄 1.概述 2.使用案例 3.源碼分析 3.1 重要屬性 3.2 構造方法 3.3 私有方法入隊與出隊 (1)入隊 (2)出隊 3.4 put和take方法 (1)put (2)take 3.5 offer和poll (1)offer

原创 Java多線程(9)——Unsafe(1)——Unsafe類的源碼分析

目錄 1.概述 2.源碼分析 2.1 Class相關 2.2 Object相關 2.3 數組相關 2.4 併發相關 (1)CAS相關 (2)線程調度相關 (3)volatile相關讀寫 (4)內存屏障相關 2.5 直接內存訪問(非堆內存)

原创 Mybatis基礎(2)——自定義Mybatis

目錄 1.自定義mybatis的預先分析 2.代碼實現 2.1 使用類加載器讀取配置文件返回流 2.2 封裝從主配置文件中讀取的信息的配置類 2.3 封裝從Mapper配置文件中讀取出來的信息的類 2.4 解析配置文件或註解的類 2.4

原创 Java多線程(28)——JUC——線程池excutors系列(3)——ThreadPoolExcutor(2)——從源碼去剖析線程池的原理

1.線程池的運行狀態   2.           execute和submit方法有什麼區別? 1.execute是Executor制定的規範,submit是ExecutorService制定的規範 2.execute只有接收Runna

原创 Java多線程(13)——Thread類的源碼剖析

待更新補充 1.Thread與Runnable Thread類中繼承了接口Runnable的同時組合了Runnbale 所以我們可以將一個Thread的子類的任務交給另一個Thread去執行 package Thread; pub

原创 Java多線程(14)——JUC——locks系列(1)——LockSupport使用以及源碼分析

目錄 1.概述 2.LockSupport的park-unpark與Object的wait-notitfy的對比 3.LockSupport的源碼分析 3.1 成員變量 3.2 park方法 3.3 unpark方法 1.概述 當我要分析

原创 Mybatis基礎(3)——Mybatis的CRUD、Mybatis的參數深入

目錄 1.mybatis的CRUD案例 1.1 保存用戶(插入) 1.2 更新用戶 1.3 刪除用戶 1.4 根據id查詢  1.5 用戶模糊查詢  1.6 查詢使用聚合函數  2.parameterType 配置參數  2.1 傳遞基本