gnvm是一个简单的Node.js多版本管理器,类似于nvm和nvmw。它的特点是单文件,不依赖于任何环境,下载即用,无需配置。gnvm支持彩色日志输出,支持多线程下载,内置...
iOS中的常见多线程方案 GCD的常用函数 GCD中有2个用来执行任务的函数用同步的方式执行任务dispatch_sync(dispatch_queue_t queue, d...
什么是RunLoop RunLoop:运行循环,在程序运行过程中循环做一些事情应用范畴:- 定时器(Timer)、PerformSelector- GCD Async Mai...
Runtime API01 - 类 获取isa指向的Class(类对象):Class object_getClass(id obj) 设置isa指向的Class : Clas...
Objective-C是一门动态性比较强的编程语言,跟C、C++等语言有着很大的不同 Objective-C的动态性是由Runtime API来支撑的 Runtime API...
最简单用法: block本质上也是一个OC对象,它内部也有个isa指针 block是封装了函数调用以及函数调用环境的OC对象 block的底层结构如图所示block底层结构 ...
基本用法: 通过runtime动态将分类的方法合并到类对象、元类对象中(程序运行过程中合并,而不是编译时)程序编译时,所有的分类都变成了结构体,方法数据结构都存在结构体中 调...
KVC的全称是Key-Value Coding,俗称“键值编码”,可以通过一个key来访问某个属性常见的API有: (void)setValue:(id)value forK...
KVO全称是Key-Value Observing,俗称“键值监听”,可以用于监听某个对象属性值的改变基本用法回顾:Person.h文件 Person.m文件 ViewCon...
instance的isa指向class当调用对象方法时,通过instance的isa找到class,最后找到对象方法的实现进行调用 class的isa指向meta-class...