首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
有梦想的程序员
掘友等级
iOS
做一些工程师该做的事情
获得徽章 22
动态
文章
专栏
沸点
收藏集
关注
作品
赞
54
文章 54
沸点 0
赞
54
返回
|
搜索文章
最新
热门
Moya + Alamofire + HandyJson + RxSwift 搭建一个新项目的网络请求
说起来汗颜。 最近项目才开始使用 Swift 语言,正如我一个朋友嘲笑的:我们都快用烂的东西你们才开始用 ,我当时竟无言以对。 那既然用了 Swift,就要想办法用舒服,用明白。从 OC 工程转换到 Swift 工程,OC 的一些库,比如:网络请求库(AFNetworking)…
类的加载
类在面向对象编程中是一种面向对象计算机编程语言的构造,是创建对象的蓝图,描述了所创建的对象共同的属性和方法。对于 Object-C 来说,类中除了属性和方法还放了协议等。 打开 mach-o 文件后发现,类是在编译时就确定地址的,只不过是一个相对地址,需要在运行时通过 ASLR…
App启动流程之 dyld 探析
从用户点击 App 开始到用户看到第一个界面,这称为一次 App 启动。 一般情况下,App 的启动分为冷启动和热启动。 冷启动是指, App 点击启动前,它的进程不在系统里,需要系统新创建一个进程分配给它启动的情况。这是一次完整的启动过程。 热启动是指 ,App 在冷启动后用…
weak 的原理探析
我想了想说,就是把 SideTables 里 weak_table 散列表中持有这个对象的 referent 指针置为 nil ,这个 weak 对象就被释放了,具体释放时机是这个对象dealloc 的时候调用了 objc_destructInstance 时候检查散列表清理。…
消息转发
既然苹果分为两个分支处理,那我们也分两步探讨。 为什么未实现类方法还调用了 [cls resolveInstanceMethod:sel] 在稍后解析。 动态方法解析 寻找 resolveInstanceMethod 实现的过程,从当前类一直循环查找父类,直到 NSObject…
iOS一些资料的整理
多线程&GCD 1、关于iOS多线程,你看我就够了 2、深入理解GCD之dispatch_queue 3、我的同事金司机出的 5 道 iOS 多线程“面试题” 内存相关 1、Memory 内存 Cra
消息查找流程(下)- 方法列表的查找(慢速发送流程)
经过上一篇 消息快速发送之 objc_msgSend 的分析 对调用方法的时候,通过汇编查询 Cache 如果 缓存命中 就直接进行发送。 但是上一篇的结尾说到,如果没有命中缓存就需要走慢速流程,也就是来到 _lookUpImpOrForward 函数里面,接下来就是对慢速流程…
消息查找流程(上)- 消息快速发送 之 objc_msgSend 分析
我们从类的结构分析过来知道了 cache_t ,在学习 cache_t 的时候,知道先进项方法查找,再进行方法缓存,那么 OC 调用方法的本质是什么呢?此时我们必然都回答 发消息,那么问题来了,OC 是如何发消息的呢?这就是我们接下来需要探索的。 在 OC 中能进行以发消息的形…
Cache_t 分析
在 类结构分析中 知道了属性和方法是如何获取的,但是为了看 class_data_bits_t bits; 中的内容,仅仅计算了 cache_t cache; 的大小,并没有认真的了解和研究过 cache_t ,当前内容就是对 Cache_t 的分析。 cache_t 是对 O…
类结构分析
上方代码就能看到 objc_class 继承于 objc_object,从这里看到 OC 万物之祖为结构体类型,也就是编译器在编译的时候会把我们的类编译成结构体类型,并且在结构体中第一个为 isa ,第二个为当前类的父类,第三个为 cache_t cache,第四个为class…
下一页
个人成就
文章被点赞
315
文章被阅读
67,457
掘力值
1,844
关注了
10
关注者
105
收藏集
5
关注标签
4
加入于
2017-12-29