原创 FileChannel(API詳解)

1、兩種獲取通道的方法2、read3、write4、獲取和設置通道的位置、大小5、long transferTo(position,count,WritableByteChannel dest)6、long transferFrom

原创 ByteBuffer緩衝區的三種創建方式與解讀

1、allocate()創建堆緩衝區2、allocateDirect()創建直接緩衝區3、wrap()創建堆緩衝區4、直接緩衝區和非直接緩衝區的比較: 字節緩衝區分爲直接字節緩衝區與非直接字節緩衝區。 1、allocate()創建堆

原创 垃圾收集算法

垃圾收集算法標記-清除算法複製算法標記-整理算法分代收集算法 標記-清除算法 最基礎的收集算法是“標記-清除”(Mark-Sweep)算法,算法分爲“標記”和“清除”兩個階段:首先標記出所有需要回收的對象,在標記完成後統一回收掉所有被

原创 內存分配與回收策略

內存分配與回收策略(1)對象優先在Eden分配(2)大對象直接進入老年代(3)長期存活的對象將進入老年代(4)動態對象年齡判定(5)空間分配擔保 (1)對象優先在Eden分配 大多數情況下,對象在新生代Eden區中分配。當Eden區沒

原创 對象最後一次自我救贖——finalize()

在根搜索算法中不可達的對象,也並非是“非死不可”的,這時候它們暫時處於“緩刑”階段,要真正宣告一個對象死亡,至少要經歷兩次標記過程:如果對象在進行根搜索後發現沒有與GC Roots相連接的引用鏈,那它將會被第一次標記並且進行一次篩選,

原创 如何判斷對象已死——引用計數算法與根搜索算法

引用計數算法與根搜索算法引用計數算法根搜索算法 引用計數算法 給對象中添加一個引用計數器,每當有一個地方引用它時,計數器值就加1;當引用失效時,計數器值就減1;任何時刻計數器都爲0的對象就是不可能再被使用的。 客觀地說,引用計數算法(

原创 類加載的過程

類加載的過程加載驗證準備解析初始化 類從被加載到虛擬機內存中開始,到卸載出內存爲止,它的整個生命週期包括了:加載(Loading)、驗證(Verification)、準備(Preparation)、解析(Resolution)、初始化

原创 垃圾收集器

垃圾收集器1、Serial收集器(單線程、複製算法)2、Serial Old收集器(單線程、標記-整理算法)3、ParNew收集器(多線程、複製算法)4、Parallel Scavenge收集器(多線程、複製算法)5、Parallel

原创 四大引用——強引用、軟引用、弱引用、虛引用

強引用、軟引用、弱引用、虛引用強引用軟引用弱引用虛引用 在JDK 1.2之後,Java對引用的概念進行了擴充,將引用分爲強引用(Strong Reference)、軟引用(Soft Reference)、弱引用(Weak Refere

原创 回收方法區

很多人認爲方法區(或者HotSpot虛擬機中的永久代)是沒有垃圾收集的,Java虛擬機規範中確實說過可以不要求虛擬機在方法區實現垃圾收集,而且在方法區進行垃圾收集的“性價比”一般比較低:在堆中,尤其是在新生代中,常規應用進行一次垃圾收

原创 三範式

三範式第一範式第二範式第三範式總結 第一範式 如果一個關係模式R的所有屬性都是不可分的基本數據項,則R∈1NF。簡單的說,就是每一個列(屬性),不能再分割成多個列(屬性)。 第一範式(First Normal Form,1st NF)

原创 MySQL——全局鎖

全局鎖 顧名思義,全局鎖就是對整個數據庫實例加鎖。MySQL 提供了一個加全局讀鎖的方法,命令是 Flush tables with read lock (FTWRL)。當你需要讓整個庫處於只讀狀態的時候,可以使用這個命令,之後其他線

原创 數據庫事務的四大特性和事務的四大隔離級別

數據庫事務的四大特性和事務的四大隔離級別數據庫事務的四大特性數據庫事務的四大隔離級別栗子輔助理解實現原理MySQL的默認隔離級別多版本併發控制(MVCC) 數據庫事務的四大特性 ACID(Atomicity、Consistency、I

原创 case when then else end

case when then else end 可以像java中的if一樣條件顯示 第一種方式: case column when value1 then result when value2 then re

原创 MySQL——InnoDB行鎖

InnoDB行鎖先從兩階段鎖協議說起InnoDB的行鎖模式及加鎖方法InnoDB行鎖實現方式Next-Key鎖相關知識點什麼時候使用表鎖死鎖和死鎖檢測總結 可以通過檢查InnoDB_row_lock狀態變量來分析系統上的行鎖的爭奪情況