博客
关于我
OC中查看消息转发调用顺序
阅读量:382 次
发布时间:2019-03-05

本文共 907 字,大约阅读时间需要 3 分钟。

Objective-C 消息转发调用顺序分析工具使用指南

在非源码工程中使用本地方法分析消息转发调用顺序,可以通过以下步骤实现

1. 引入方法

在需要分析消息转发的类中添加外部方法支持

extern void instrumentObjcMessageSends(BOOL);

2. 开启与关闭分析

在目标类中调用分析工具

instrumentObjcMessageSends(YES); // 启用分析[HSPerson walking]; // 被分析的操作instrumentObjcMessageSends(NO); // 停止分析

3. 获取分析结果

运行项目后,分析结果将保存在 /private/tmp/ 文件夹中,文件名以 msgSends- 开头

4. 查看详细调用日志

打开生成的日志文件,查看详细的消息转发调用序列

+ HSPerson NSObject resolveClassMethod:+ HSPerson NSObject resolveClassMethod:+ NSObject NSObject resolveInstanceMethod:+ NSObject NSObject resolveInstanceMethod:+ HSPerson HSPerson forwardingTargetForSelector:+ HSPerson HSPerson forwardingTargetForSelector:- OS_xpc_serializer OS_xpc_object dealloc- OS_object NSObject dealloc- __NSCFConstantString __NSCFConstantString release- NSMethodSignature NSMethodSignature methodReturnType- NSMethodSignature NSMethodSignature _argInfo

通过上述方法,可以全面追踪和分析 Objective-C 消息转发链中的各个环节,帮助开发者深入理解对象之间的交互逻辑

转载地址:http://xhqg.baihongyu.com/

你可能感兴趣的文章
Oracle 升级10.2.0.5.4 OPatch 报错Patch 12419392 Optional component(s) missing 解决方法
查看>>
oracle 去重
查看>>
oracle 可传输的表空间:rman
查看>>
Oracle 启动监听命令
查看>>
Oracle 启动阶段 OPEN
查看>>
Oracle 在Drop表时的Cascade Constraints
查看>>
Oracle 在Sqlplus 执行sql脚本文件。
查看>>
Oracle 如何处理CLOB字段
查看>>
oracle 学习
查看>>
oracle 定义双重循环例子
查看>>
ORACLE 客户端工具连接oracle 12504
查看>>
Oracle 客户端连接时报ORA-01019错误总结
查看>>
oracle 导出sql数据库表结构,使用sql developer 导出Oracle数据库中的表结构
查看>>
oracle 嵌套表 例子,Oracle之嵌套表(了解)
查看>>
Oracle 常用命令
查看>>
Oracle 常用的V$视图脚本(二)
查看>>
Oracle 并行原理与示例总结
查看>>
oracle 并集 时间_Oracle集合运算符 交集 并集 差集
查看>>
Oracle 序列sequence 开始于某个值(10)执行完nextval 发现查出的值比10还小的解释
查看>>
ORACLE 异常错误处理
查看>>