MRC下的内存管理

一、名词分类

1 拥有者:(变量,实例,函数,变量的作用域)

2 被拥有者:(变量,实例,函数,变量的作用域)

3 生成 持有 释放 销毁。(拥有=生成+持有)

4 alloc,new,copy只有这三种基本的方法是生成并持有对象。

5 retain 持有对象 release释放对象 dealloc销毁对象

6 autorelease 在对象超出指定生存范围后自动释放(指定生存范围外=作用域外+作用域内对象有效)

二、关系

1 对象的环境生成并持有对象+释放对象+控制对象的销毁

2 对象本身负责销毁自己

3 “=”号 不会持有 

4 对象的拥有权(注意是拥有权)是可以转接的

5 函数的return就是拥有权转接的一种

6 变量 函数有编译器自己管理内存的使用,我们需要考虑的就是实例,变量作用域的内存管理了

总结:对象的环境拥有对象,并管理对象的生活,但是对象的销毁由对象自身处理

PS:内存问题,其实就是一个使用的对象是否存在内存中的问题

常见的三种问题:

1 对象被销毁了,而你去使用他。

2 对象被销毁两次

3 对象销毁不掉

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • MRC下的内存管理 内存中的5大区域 栈区 这个区的内存保存的是局部变量, 当作用域结束后, 系统就会自动回收内存...
    onePic阅读 4,811评论 0 0
  • *面试心声:其实这些题本人都没怎么背,但是在上海 两周半 面了大约10家 收到差不多3个offer,总结起来就是把...
    Dove_iOS阅读 27,400评论 30 472
  • 1.1 什么是自动引用计数 概念:在 LLVM 编译器中设置 ARC(Automaitc Reference Co...
    __silhouette阅读 10,699评论 1 17
  • 重点掌握 3 类对象和方法 对象就是一个物体 类的独特存在就是一个实例,对实例进行操作叫做方法。方法可以应用于类或...
    Coder大雄阅读 5,036评论 0 2
  • 概述 在iOS中开发中,我们或多或少都听说过内存管理。iOS的内存管理一般指的是OC对象的内存管理,因为OC对象分...
    DamonMok阅读 9,453评论 2 20

友情链接更多精彩内容