内存对齐

2021-05-15  本文已影响0人  ANN_12

结构体内存对齐 8的倍数
操作系统内存对齐 16的倍数

 内存对齐的概念有两个方面:
 1.结构体内存对齐:
 2.操作系统内存对齐:
 
 结构体内存对齐:
 我们都知道OC对象的本质就是底层转化为C++结构体。
 结构体的所有成员变量, 某个成员变量所占用的内存最大。 那结构体的内存大小就这个成员变量内存大小的倍数进行分配。
 基本上是按8的倍数进行计算
 
 操作系统内存对齐:
 操作系统为了更好的性能。硬性规定的,是按16的倍数进行分配。
 
 解决思路:
 先计算所有成员变量累计加起来占用多少内存。
 结构体实际占用大小:就是找跟8的倍数靠近的数值。
 操作系统分配大小: 找跟16的倍数靠近的数值。
上一篇 下一篇

猜你喜欢

热点阅读