首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
内存管理
订阅
用户2236486188739
更多收藏集
微信扫码分享
微信
新浪微博
QQ
9篇文章 · 0订阅
iOS应用的启动流程和优化详解
一、应用启动流程1、整体过程(1)解析Info.plist加载相关信息,例如如闪屏沙箱建立、权限检查(2)Mach-O(可执行文件)加载如果是胖二进制文件(为了保持向下兼容,且支持旧有设备及旧有指令集
iOS 底层探索篇 —— dyld加载流程(上)
这是我参与8月更文挑战的第11天,活动详情查看:8月更文挑战 1. 应用程序加载 1.1库 每个程序的运行都会依赖一些基础的库,比如说UIKit,CoreFoundation等,库是一些可执行的二进制
iOS底层学习——GCD底层源码分析(栅栏函数、信号量、调度组、事件源)
对GCD的相关内容进行分析探索,如栅栏函数、信号、调度组、事件源等,从使用方式、底层实现原理两个方面进行分析。
iOS逆向 12:Mach-O文件(下)
这是我参与8月更文挑战的第7天,活动详情查看:8月更文挑战 本文主要介绍Mach-O文件的内部结构的演示 Mach-O文件结构 下面更多的是Mach-O的结构演示,更多的Mach-O介绍可以查看iOS
动态库和静态库
1. 静态库 和 动态库 区别 最大的区别: 链接方式:(动态链接 、 静态链接) 编译产物: 静态库: 只编译产生 .o 文件的合集 如何链接:静态库.o + App.o => app exec (
iOS-底层原理36:内存优化(一) 野指针探测
这是我参与更文挑战的第1天,活动详情查看: 更文挑战 本文主要讲解两种野指针检测的原理及实现 技术点:野指针探测 本文的主要目的是理解野指针的形成过程以及如何去检测野指针 引子 在介绍野指针之前,首先
iOS 基础
这种问题在开发时经常遇到,原因是访问了野指针,比如访问已经释放的对象的成员变量或者发消息、死循环等。 3》expr 可以在调试时动态执行制定表达式,并将结果打印出来。常用于在调试过程中修改变量的值。 4》为类动态添加新的方法。 4》支持了更多的HTML属性。 2》如果需要绘制图…
iOS 底层拾遗:objc_msgSend 与方法缓存
行文过程中会涉及到一些汇编代码,不过不影响理解核心逻辑。 源码基于 Runtime 750,arm64 架构。 注意: arm64 汇编代码会出现很多p字母,实际上是一个宏,64 位下是x,32 位下是w,p就是寄存器。 $0获取宏的第一个参数,调用时传的p13,即是isa。这…
iOS内存管理详解
从上图可以看到,栈里面存放的是值类型,堆里面存放的是对象类型。对象的引用计数是在堆内存中操作的。下面我们讲讲堆和栈怎么存放和操作数据, 还有MRC和ARC怎么管理引用计数。 这就好像候机的时候,无论谁先到达候机厅,总是头等舱的乘客先登机,然后是商务舱的乘客,最后是经济舱的乘客。…