浅谈iOS堆和栈

作者: 萤火驻守心间 | 来源:发表于2022-05-30 20:47 被阅读0次

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

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

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

    相关文章

      网友评论

        本文标题:浅谈iOS堆和栈

        本文链接:https://www.haomeiwen.com/subject/mhqaprtx.html