dealloc

turboksiOS63
dealloc
当调用dealloc方法的时候,执行顺序可以在源码中查找如下(objc源码):1....

iOS程序的内存布局

turboksiOS54
iOS程序的内存布局
    代码段:编译之后的代码...

GCD定时器

turboksiOS62
GCD定时器
- (void)viewDidLoad {    [super viewDidLoad];    self.view.backgroundColor = [UI...

iOS的KVO、KVC

turboksiOS63
iOS的KVO、KVC
一:KVO  在实际的开发过程中,我们可能会遇到这种需求,就是需要根据一个对象某个属性值的改变,来作出不同的处理。但是实现起来比较麻烦,需要在很多地方进行判断处理,为了方便我们的开...

iOS的block

turboksiOS60
iOS的block
一:block的本质1.    block本质上是一个OC对象,它内部有个isa指针2.    block是封装了函数调用以及函数调用环境的OC对象3.&nbs...

Runtime动态创建类

turboksiOS51
Runtime动态创建类
- (void)viewDidLoad {    [super viewDidLoad];    Class KSObj = objc_allocateClas...

RunLoop

turboksiOS59
RunLoop
RunLoop一、基础理论顾名思义1.    运行循环2.    在程序运行过程中循环做一些事情3.    是用户态和内核态之间的交互模式应...

多线程举例

turboksiOS58
多线程举例
举例一:- (void)viewDidLoad {    [super viewDidLoad];    dispatch_queue_t queue = di...

iOS多线程

turboksiOS67
iOS多线程
多线程常见方案一、GCD的函数:GCD中有2个用来执行任务的函数queue:队列block:任务1.    用同步的方式执行任务dispatch_sync(di...

iOS的分类(Category)

turboksiOS54
iOS的分类(Category)
一:Category的底层结构定义在objc-runtime-new.h中:struct category_t {    const char *name;   ...