蘇凌峯 -
JAVA併發編程——Java對象內存佈局和對象頭
1.對象在堆內存中佈局
2.對象的對象頭
3.對象的實例數據
4.對象的對齊填充
5.看看Object的對象頭
6.看看自定義對象的對象頭
7.總結
1.對象在堆內存中佈局
當我們寫入這樣一行代碼
Object object = new Object();
的時候,我們都知道它會在我們的JVM堆-新生區-伊甸園區新建一個對象,但是我們可能只是知道這個對象在哪兒,但是對這個對象的內存結構卻知
佈局
,
JAVA
,
對象
蘇凌峯 -
Netty網絡編程——NIO與零拷貝
1.什麼是DMA
2.什麼是用户態和內核態
3.普通BIO的拷貝流程分析
4.mmap系統函數
5.sendFile系統函數(零拷貝)
6.java堆外內存如何回收
1.什麼是DMA
DMA(Direct Memory Access直接存儲器訪問),我們先從一張圖來了解一下DMA是一個什麼裝置。
假設在什麼沒有DMA的情況下,如果CPU想從內存裏讀取數據併發送到網卡中,在讀的過程中,我們可以知
mmap
,
nio