未分类 · 2023年3月24日 0

浅谈iOS堆和栈【】

按管理方式分:
1、对于栈来讲,是由系统编译器自动管理,不需要程序员手动管理。
2、对于堆来讲,释放工作由程序员手动管理,不及时回收容易产生内存泄露。

按内存分配:
一、栈区
1、栈区的内存地址是从高到低的分配
2、栈区存放局部变量,先进后出,一旦出了作用域就会被销毁

二、堆区
1、堆区的内存地址是从低到高分配
2、堆区的变量空间分配都是alloc,程序员需要管理堆区的内存
3、ARC的内存管理,是在编辑器编译的时候,自动添加retain等,c的变量的内存管理,需要程序员处理
4、堆区的内存分配由系统来负责
5、系统使用一个链表来维护所有已经分配过的内容空间

打赏 赞(0) 分享'
分享到...
微信
支付宝
微信二维码图片

微信扫描二维码打赏

支付宝二维码图片

支付宝扫描二维码打赏