首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
佐笾
掘友等级
工程师
|
iOS开发工程师
越学习越觉得自己懂得太少
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
316
文章 235
沸点 81
赞
316
返回
|
搜索文章
最新
热门
OpenGL/OpenGL ES 入门:图形API以及专业名词解析
OpenGL(Open Graphics Library):是一个跨编程语言、跨平台的编程图形程序接口,它将计算机的资源抽象称为一个个OpenGL的对象,对这些资源的操作抽象为一个个的OpenGL指令。 OpenGL ES(OpenGL for Embedded Systems…
笔记-如何优雅姿势探究类结构(类的底层原理解析)
类对象class1、class2、class3的地址是同一个,因为一个对象的类对象只有一个。 object_getClass获取对象的类,类对象存储的位置是哪里?在文章笔记-runtime源码解析之让你彻底了解底层源码里讲述过,它是存在元类中,所以class4为元类,同样cla…
笔记-method-swizzling~那些年,一起遇过的坑
method-swizzling俗称黑魔法,在前几篇文章中说过,在OC中调用一个方法,其实就是向一个对象发送消息,而查找消息的唯一依据是selector的名字,通过名字查找到IMP。利用OC的动态特性,可以实现在运行时偷换selector对应的方法实现,达到方法实现交换的效果。…
笔记-runtime源码解析之让你彻底了解底层源码
runtime是由C、C++、汇编一起写成的api,为OC提供运行时。 可有看出,对象的本质是一个结构体,方法的本质是发送消息。任何方法的调用都可以翻译成是objc_msgSend这个方法的调用 上面这些汇编语言,主要就是为了寻找imp,调用_objc_msgSend然后判断接…
笔记-iOS 多线程:『NSOperation、NSOperationQueue』详尽总结
执行操作的意思,换句话说就是你在线程中执行的那段代码。 在 GCD 中是放在 block 中的。在 NSOperation 中,我们使用 NSOperation 子类 NSInvocationOperation、NSBlockOperation,或者自定义子类来封装操作。 这里…
笔记-源码解析之dispatch_once、信号量、调度组
这串代码不用解释,相信大家都熟悉。现在前往源码解析 这里的once就是一个long类型,拿到它的指针类型传入到函数里。 第一句代码把我们传进来的指针强转成dispatch_once_gate_t,进入这个会发现它是一个结构体,里面只有一个联合体。 从这句代码可以看出,这里是创建…
笔记-GCD源码简单解析之队列与函数
上面完整的输出了串行和并发队列的信息,下面就通过底层代码看看是如何进行创建的。 首先通过dispatch_queue_create()调用_dispatch_lane_create_with_target()方法,同时注意两个参数。 然后观察方法里的第一行代码dispatch_…
笔记-多线程底层再探
这里是一个串行队列,dispatch_async任务开启了一个线程专门处理,不必等待,所以先按顺序输出任务1、任务5;进入第一个dispatch_async任务,串行队列,所以也是按顺序执行任务2、dispatch_asyncblock任务、任务4;此时的block任务是一个同…
笔记-多线程底层初探
执行过程:每个独立的进程有一个程序运行的入口、顺序执行序列和程序入口。但是线程不能独立执行,必须依存在应用程序中,由应用程序提供多个线程执行控制 一个进程崩溃后,在保护模式下不会对其他进程产生影响,但是一个线程崩溃整个进程都死掉。所以多进程要比多线程健壮 进程切换时,消耗的资源…
笔记-从源码角度分析alloc与init的底层
可以发现,这三个对象的地址是一样的,为什么呢?这里就引起思考,上面的alloc和init到底做了什么?下面我们通过源码分析一下。 通过instanceSize()方法分配内存,calloc()开辟空间,initInstanceIsa()创建对象。 并且进入initInstanc…
下一页
个人成就
文章被点赞
905
文章被阅读
236,209
掘力值
5,102
关注了
103
关注者
2,731
收藏集
0
关注标签
8
加入于
2018-09-14