iOS 底层原理 文章汇总[https://www.jianshu.com/p/412b20d9a0f6] 在上一篇iOS-底层原理 16:dyld与objc的关联[http...
一、 概述 LLVM是架构编译器的框架系统,由C++编写而成。由于优化以任意程序语言编写的程序的编译时间(complie-time)、链接时间(link-time)、运行时间...
一、引言 前边一篇文章我们已经大致介绍了GCD的有些概念和函数的执行。接下来让我们继续带着探索的心里去学习,继续前行,继续介绍线程是如何开辟和创建的,又是什么时候去执行相关的...
一、前言 在iOS开发过程中,我们知道多线程技术是使用最多的情况,能快速的执行多个调度任务的执行。而在多线程开发过程当中,多线程技术有好几种,其中包括pthread,NSTh...
一,RAM和ROM的介绍 RAM与ROM就是具体的存储空间,统称为存储器。 RAM(random access memory):运行内存,CPU可以直接访问,读写速度非常快,...
1、Runtime面试中问题整理 2、Runloop面试中问题整理 3、KVO面试中问题整理 4、Block面试中问题整理 5、多线程面试问题整理 6、设计模式问题整理 7、...
一,KVO (Key-Value Observing) KVO是Objective-C对观察者设计模式的一种实现,它提供一种机制,指定一个被观察对象(如A类),当对象中的某个...
一,概念 KVC(Key-value coding)键值编码,单看这个名字可能不太好理解。其实翻译一下就很简单了,就是指iOS的开发中,可以允许开发者通过Key名直接访问对象...
一,应用程序加载回顾 通过前面的学习我们对iOS应用程序的加载有了一个大致的认识, 1 系统调用exec() 会让我们的应用程序映射到信的地址空间 2 然后通过dyld 进行...
一 ,引言 前边我们已经学习了iOS开发过程中的相关程序启动的重要角色dyld,通过dyld帮助我们做了很多准备的工作,加载相关的类,初始化相关environ_init 环境...
一、前言 一个类对象查找方法,我们都知道是先从缓存列表中去查找,然后在去方法列表里查找,这样就能快速的查找到相关的imp,但是当我们没有查找到相应的imp时,系统又会做一些什...
一、前言, 在iOS消息机制过程中存在两种查找imp 的方式,另外一种就是慢速查找,我们都知道快速就是走汇编流程,因为汇编本身就计算机能识别的语言。所以并且上一篇文章已经着重...
一,前言 在iOS开发过程中,我们都知道不管是什么方法的执行,对象的创建,以及代理 和Block的实现都离不开runtime,所以runtime可以说是iOS开发过程中的生命...
前言: 在最近学习过程中我们知道一个类的结构的定义,以及一个对象的alloc的执行流程。初探底层的源码。经过最新开源的objc781我们知道,类的结构中重要的成员有 Clas...
一,序言 我们都知道,iOS开发中很多信息都存在于一个类的信息中,其中通过isa指针能查询各种层级的内容以及方法、协议,以及属性等信息的查询,接下来我们通过项目的调试进行查看...
一, class_getClassMethod 与 class_getInstanceMethod 的分析, 首先我们先在项目中定义一个类LGPerson 此类继承自NSOb...