首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
OC底层原理
cocoCola91667
创建于2023-04-26
订阅专栏
OC底层原理笔记
等 4 人订阅
共32篇文章
创建于2023-04-26
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
iOS-多线程3-加锁方案1
上篇文章只讲了OSSpinLock,本文继续讲iOS中其他加锁方案。 ##二. os_unfair_lock os_unfair_lock用于取代不安全的OSSpinLock ,从iOS10开始才支持
iOS-多线程3-加锁方案2
##一. NSConditionLock NSConditionLock是对NSCondition的进一步封装,可以设置具体的条件值。 NSConditionLock相关API: 简单使用如下: 可以
iOS-内存管理1-定时器、NSProxy
#一. CADisplayLink、NSTimer 代码如下: 关于上面两个定时器: CADisplayLink这个定时器不能设置时间,保证调用频率和屏幕刷帧频率一致。屏幕刷帧频率大概是60FPS,所
iOS-内存管理2-内存区域、Tagged-Pointer
#一. 内存区域 验证上图,代码如下: 运行后,整理打印: 可以发现: 上面的内存地址从小到大。 字符串常量一样的时候,指针指向的内存地址也一样,说明保存在内存中只有一份内存。 栈里面内存分配的确是从
iOS-内存管理3-MRC
一. 初识MRC Automatic Reference Counting:ARC Manual Reference Counting:MRC 2. 在iOS中,使用引用计数来管理OC对象的内存 3.
iOS-内存管理4-Copy
一. copy(不可变拷贝)、mutableCopy(可变拷贝) copy就是拷贝, 拷贝的目的:产生一个副本对象,跟源对象互不影响。 修改了源对象,不会影响副本对象,修改了副本对象,不会影响源对象。
iOS-内存管理5-引用计数、__weak原理
#一. 引用计数 1. 引用计数存储在哪 我们都知道,调用retain会让OC对象的引用计数+1,调用release会让OC对象的引用计数-1,那么引用计数存储在哪里呢? 其实在isa存储信息分析中已
iOS-内存管理6-autorelease
一. 转成C++代码 我们都知道,在MRC中,当对象调用autorelease后,这个对象会在它所在的自动释放池结束后调用release方法,如下代码: person指针指向的对象会在{}结束后调用r
iOS-性能优化-卡顿优化
#一. CPU和GPU的作用 在屏幕成像的过程中,CPU和GPU起着至关重要的作用: CPU(Central Processing Unit,中央处理器) CPU的工作:对象的创建和销毁、对象属性的调
iOS-性能优化-耗电优化、启动优化、安装包瘦身
#一. 耗电优化 耗电的主要来源 CPU处理,Processing 网络,Networking 定位,Location 图像,Graphics 1. CPU、GPU优化 尽可能降低CPU、GPU功耗
iOS-架构
架构(Architecture)就是软件开发中的设计方案。 架构可大可小,可以是处理类与类之间的关系、模块与模块之间的关系,也可以是处理客户端与服务端之间的关系。 我们经常听到的关于架构的名词: MV
iOS-NSInvocation
参考:https://www.jianshu.com/p/ad1622a32d26