C 記憶體布局占用情況

2021-07-04 17:20:53 字數 489 閱讀 4752

c++ 中記憶體分布比較複雜,主要分為堆、棧、.data區、**段,在平時會涉及到乙個類的記憶體大小,總結如下:

1.

普通的成員函式不會佔記憶體,但是普通的成員變數佔記憶體。

2.

static的變數和函式都不會佔記憶體。static資料存放於.data區中,並不在堆疊中。

3.

virtual成員函式(包括純虛函式)會佔記憶體,因為會有乙個vptr指向virtual table的原因,所以不管有多少個virtual函式,均只佔乙個sizeof(vptr)=4

4.

派生類:需要加上其基類的size

5.       空類中,編譯器會自動加入乙個位元組。這麼做是為了保證每個物件都有唯一的記憶體位址。例如:a 宣告了b,c物件,如果不新增乙個位元組,b,c的起始位址會發生衝突。

檢視php fpm記憶體占用情況

1 檢視每個php fpm占用的記憶體大小 ps ylc php fpm sort rss2.檢視php fpm在你的機器上的平均記憶體占用 ps no headers o rss,cmd c php fpm awk end pm dynamic 對於專用伺服器,pm可以設定為static。如何控制...

linux檢視記憶體占用情況

輸入 top pid 程序的id user 程序所有者 pr 程序的優先級別,越小越優先被執行 ninice 值 virt 程序占用的虛擬記憶體 res 程序占用的物理記憶體 shr 程序使用的共享記憶體 s 程序的狀態。s表示休眠,r表示正在執行,z表示僵死狀態,n表示該程序優先值為負數 cpu ...

linux檢視記憶體占用情況

輸入 top pid 程序的id user 程序所有者 pr 程序的優先級別,越小越優先被執行 ninice 值 virt 程序占用的虛擬記憶體 res 程序占用的物理記憶體 shr 程序使用的共享記憶體 s 程序的狀態。s表示休眠,r表示正在執行,z表示僵死狀態,n表示該程序優先值為負數 cpu ...