iOS知识体系总结-内存相关

注意:更新内容会同步到GitHub iOSWiki-知识体系总结

总结-内存相关

iOS知识点/内存相关 #iOS体系总结

重点掌握

基础相关

Swift内存相关基础
iOS内存布局结构?
堆区和栈区的区别?为什么要设计堆和栈,主要解决哪些问题?
Swift对象堆空间申请过程?
Swift里let和var变量的内存布局有何不同?
内存布局为什么要内存对齐?对齐的规则?
你对iOS内存管理的理解?
引用计数的存储方式?
ARC在编译器和运行时分别做了哪些工作?
::retain、release的实现机制?::

内存布局

结构体的内存布局
Swift中结构体的内存布局?
Swift类内存布局
Swift中类的内存布局?有哪些数据结构?关系是怎样的?Swift和OC类对象内存布局的区别?
Swift枚举的内存布局
Swift中枚举的内存布局?规则是什么?
Swift中枚举中带关联值的布局是怎样的?不带又是怎样的?
Swift中枚举中带原始值的布局是怎样的?不带又是怎样的?
Swift协议的内存布局
Swift中的协议的内存布局? 协议的属性存储在什么地方?VWT是什么?PWT又是什么?

循环引用

循环引用相关
你对循环引用的理解?强引用和弱引用的区别?
weak和unowned有什么区别?在什么场景下使用weak?什么场景下使用unowned?
weak指针实现原理?为什么对象销毁后会被置为nil?在SideTable里的存取过程又是怎样的?SideTable的组成?为什么有多张SideTable?SideTable为什么会有一把自旋锁?
说说循环引用的场景和解决思路?闭包为什么会产生循环引用?手写循环引用例子?

自动释放池

自动释放池
什么是自动释放池?自动释放池的管理原理是怎样的?
autoreleasePool和Runloop的关系(了解)?

写时复制

Swift写时复制
什么是Swift写时复制?如何为结构体手动实现写时复制?
Swift对象的深度复制(使用Codable协议)

其他常见问题

其他常见问题

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。