美文网首页
1.4、iOS面试题之内存管理

1.4、iOS面试题之内存管理

作者: zmfflying | 来源:发表于2020-06-14 14:40 被阅读0次

1.堆和栈的区别

https://www.jianshu.com/p/c8e1d91dda99

Objective-C的对象在内存中是以堆的方式分配空间的,并且堆内存是由你释放的,就是release

OC对象存放于堆里面(堆内存要程序员手动回收)

非OC对象一般放在栈里面(栈内存会被系统自动回收)

堆里面的内存是动态分配的,所以也就需要程序员手动的去添加内存、回收内存

2.如何防止循环引用?

nstimer  delegate  block

3.内存使用如何优化?

https://blog.csdn.net/majiakun1/article/details/79228665

4.线上如何监测内存使用?

https://www.cnblogs.com/dsxniubility/p/5493117.html

https://blog.csdn.net/u011619283/article/details/78687673/

CPU占用率

5.内存泄漏可能会出现的几种原因,聊聊你的看法?

追问一:非OC对象如何处理?

追问二:若常用框架出现内存泄漏如何处理?

https://www.jianshu.com/p/3a50d1805655

6.ARC和MRC的本质区别是什么?

7.objc使用什么机制管理对象内存?

8.autorelease变量什么时候释放?手动添加的是大括号结束的时候释放,系统自动释放是在当前runloop循环结束的时候

相关文章

网友评论

      本文标题:1.4、iOS面试题之内存管理

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