iOS/Swift Rumtime 常用API汇总

Objective-C Runtime

Objective-C runtime是一个运行库,它提供对Objective-C语言的动态属性的支持,因此所有Objective-C应用程序都链接到它。Objective-C运行库支持函数在位于/usr/lib/libobjc.A.dylib的共享库中实现。

在Objective-C中编程时,通常不需要直接使用Objective-C运行时库。此API主要用于开发Objective-C和其他语言之间的桥接层,或用于低级调试

Objective-C运行库的macOS实现是Mac独有的。对于其他平台,GNU编译器集合使用类似的API提供了不同的实现。本文档仅涉及macOS实现。

底层Objective-C运行时API在osx版本10.5中进行了显著更新。许多函数和所有现有的数据结构都被新函数所取代。旧的函数和结构在32位模式下不推荐使用,而在64位模式中则不存在。即使在64位模式的类计数、协议计数、每个类的方法、每个类的ivar、每个方法的参数、每个方法的sizeof(所有参数)和类版本号中,API也将多个值约束为32位int。此外,新的Objective-cabi(这里没有描述)进一步将sizeof(一个实例)限制为32位,将另外三个值限制为每个类的24位方法、每个类的ivar和sizeof(单个ivar)。最后,过时的NXHashTable和NXMapTable被限制为40亿个条目。

常用的runtime API 主要有以下几种:

1、objc_xxx系列函数

objc_xxx系列函数

2、class_xxx系列函数

class_xxx系列函数

3、object_xxx系列函数

object_xxx系列函数

4、method_xxx系列函数

method_xxx系列函数

5、property_xxx系列函数

property_xxx系列函数

6、protocol_xxx系列函数

protocol_xxx系列函数

7、ivar_xxx系列函数

ivar_xxx系列函数

8、sel_xxx系列函数

sel_xxx系列函数

9、imp_xxx系列函数

imp_xxx系列函数

注:runtime API 汇总文档 百度云下载,密码:zcs2

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值