ios内存管理(ARC MRC 内存分区 野指针)
2023-09-14 09:04:15 时间
ARC
1.内存管理原则
MRC
谁创建,谁释放;谁引用,谁管理
或者说
使用MRC,需要遵守谁创建,谁回收的原则。也就是谁alloc,谁release;谁retain,谁release
。
主要参考博客:
iOS开发堆栈你理解多少?
参考博客:
iOS 内存管理基本原则
iOS内存管理机制解析
2.哪些情况会产生内存泄漏,如何检测内存泄漏
一般容易造成泄漏的点
- Retain Cycle,Block强引用
- NSTimer释放不当
- 第三方提供方法造成的内存泄漏
- CoreFoundation方式申请的内存,忘记释放
常规的检测方法
- Analyze静态分析(command + shift + b)
- Instruments中的Leak动态分析内存泄漏
iOS内存泄漏检测方法
iOS 内存泄露检查方法2
iOS 内存泄漏排查方法及原因分析
3.其他参考
相关文章
- iOS小技能: 限制账号退出登陆后无法收到推送功能(递归设置和删除别名)
- iOS小技能:右滑返回
- iOS 和 swift 中常见的 Int、Int8、Int16、Int32和 Int64介绍「建议收藏」
- iOS_OC API 指定可空性
- iOS个人笔记
- ios开发证书详解
- iOS底层原理(一):OC对象实际占用内存与开辟内存关系
- 【iOS 开发】iOS 开发 简介 (IOS项目文件 | MVC 模式 | 事件响应机制 | Storyboard 控制界面 | 代码控制界面 | Retina 屏幕图片适配)
- 理解 iOS 的内存管理详解手机开发
- 在iOS上自动检测内存泄露详解手机开发
- IOS中计算文件的大小详解手机开发
- iOS 字符串常用判定库详解手机开发
- IOS 雪花飘落效果详解手机开发
- ios基础:iOS改变状态栏字体颜色详解手机开发
- javascript微信ios自动播放音效方法详解编程语言
- MacOS 与 iOS:由浅入深的连接(macos和ios)
- Linux技术可以开发IOS系统?(linux能开发ios吗)
- 操作系统开启iOS时代:Linux操作系统的新篇章(ios是linux)
- 比较iOS和Linux:谁更具优势?(ios和linux)
- iOS 不是 Linux,而是苹果独特操作系统(ios是linux吗)
- iOS访问MySQL数据库的实战技术(ios访问mysql)
- iOS 轻松登录 Oracle 数据库(ios 登陆oracle)
- 使用iOS就能操作Oracle数据库(ios上oracle)
- iPhone 6s自动关机?苹果称新iOS系统可解决问题