美文网首页
Objective-C 内存管理机制

Objective-C 内存管理机制

作者: 管乐_VICTOR | 来源:发表于2017-10-16 11:24 被阅读90次

一、Objective-C 内存管理的对象
1、内存管理的对象主要有两类:
①基本数据类型:int 、float、 struct 等。
②引用类型:继承自NSObject类的所有OC对象。
第一种基本数据类型不需要我们管理,第二种需要管理。
2、管理内存的原理:
①值类型一般都会被放入栈中(先进后出),引用类型会被放到堆中,当给对象分配内存空间时,会随机从内存当中开辟空间,对象和对象之间可能会存在很多碎片,这些碎片空间需要我们管理。
②栈内存从性能上来说优于堆内存,数据量过大的时候,我们会把数据存入堆中,然后在栈中存放堆的地址,这样调用数据的时候,就可以快速的通过栈中的地址拿到堆中的数据。
③装箱:把int等包装成NSNumber(会降低性能);
拆箱:把NSNumber转化为float等 (注意类型错误时候的安全性问题);
装箱和拆箱会增加代码的运行时间,降低代码可读性,影响性能。
二、内存管理方式
主要是MRC和ARC管理方式;
三、MRC与ARC混编
在ARC项目中,对MRC文件可以添加 -fno-objc-arc标识;在MRC中,对ARC的文件可以添加 -fobjc-arc 的标识。(或者可以把MRC文件转为ARC,现在多用ARC,但是有些第三方框架还是MRC的需要处理);

相关文章

  • iOS的内存管理

    Objective-C需要自己考虑内存管理,但是如果熟悉Objective-C的内存管理机制,手工管理内存其实也并...

  • 内存管理机制

    内存管理机制 Objective-C的内存管理主要有三种方式手动内存计数(MRC)、ARC(自动内存计数)、内存池...

  • iOS ARC

    ARC即Automatic Reference Counting,它是Objective-C的内存管理机制。简单来...

  • 面试题:什么是ARC?

    ARC全称是 Automatic Reference Counting,是Objective-C的内存管理机制。简...

  • 内存泄漏

    目录 1、Objective-C的内存管理机制2、Retain cycle的含义3、怎样避免内存泄漏 Object...

  • ARC与MRC的混编

    Objective-C中提供了两种内存管理机制 MRC(MannulReference Counting)//手动...

  • GeekBand-OC中的ARC

    自动引用计数(Automatic Reference Counting)是Objective-C默认的内存管理机制...

  • 自动引用计数笔记(极客班)

    自动引用计数(Automatic Reference Counting)是Objective-C默认的内存管理机制...

  • iOS-ARC和MRC

    Objective-c中提供了两种内存管理机制MRC(MannulReference Counting)和ARC(...

  • MCR & ARC

    Objective-c中提供了两种内存管理机制MRC(MannulReference Counting)和ARC(...

网友评论

      本文标题:Objective-C 内存管理机制

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