首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
老青菜
掘友等级
iOS
|
@
iOS Swift flutter javascript c# ...
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
29
文章 27
沸点 2
赞
29
返回
|
搜索文章
赞
文章( 27 )
沸点( 2 )
iOS NSLock 底层分析
在Foundation框架中,提供了NSLock互斥锁、NSCondition条件变量、NSConditionLock条件锁、NSRecursiveLock递归锁。 这些锁都是在POSIX标准接口的pthread_mutex、pthread_cond基础上,增加了面向对象的封装…
iOS Atomic 底层分析
原子属性,只能保证getter、setter的操作是安全的。我们看下objc里关于getter、setter的实现。 可以看到标记atomic的property生成的getter、setter内部使用了spinlock_t自旋锁保证了getter、setter的访问安全。 at…
iOS OSSpinLock
自旋锁(Spinlock)是一种忙等待锁,线程反复检查锁变量是否可用,不会挂起,避免了进程上下文的调度开销,适合阻塞很短时间的场合。当然也就不适合单CPU单线程上使用。 另外需要注意的是,可能是由于安全问题(具体可以看不再安全的OSSpinlock - ibireme),自旋锁…
iOS Synchronized 底层分析
synchronized是objc中提供的同步锁,支持递归。但是在swift中删除了,可以使用objc_sync替代。 想要弄清楚这些问题,还得弄清楚synchronized的底层实现,接下来我们来分析具体的实现。 首先通过汇编来分析下synchronized都做了什么,先写一…
iOS中常用的锁
最近在整理iOS锁相关的知识,翻阅了网上很多iOS锁的文章,基本都是起源于ibireme的不再安全的OSSpinlock。关于锁,多多少少会有下面这些疑问: 接下来我们一个个来解释。 锁是保证线程安全的同步工具,每一个线程在访问数据前,要先获取acquire锁,访问结束之后释放…
iOS 离屏渲染分析
上一篇文章 ,我们了解了iOS渲染架构,以及 GPU 的渲染流程。GPU 的渲染方式有两种。 On-Screen Rendering:当前屏幕渲染,CPU、GPU 不停地将内容渲染完成放入frame buffer帧缓冲区中,显示屏幕从 frame buffer中获取内容显示。 …
iOS底层:isa 指针
答案:都输出 Son。 类的class方法返回了类对象自身,对象的class方法返回了isa指针。那么isa到底指向什么? objc_allocateClassPair提供了创建class的功能,方法内部生成了cls和meta两个class,并调用objc_initialize…
个人成就
文章被点赞
72
文章被阅读
22,629
掘力值
571
关注了
0
关注者
39
收藏集
0
关注标签
15
加入于
2018-06-21