博客
关于我
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/

你可能感兴趣的文章
python | grab,一个强大的 Python 库!
查看>>
python | h5py,一个无敌的关于 HDF5 的 Python 库!
查看>>
python | huey,一个非常厉害的 任务调度 Python 库!
查看>>
python | hypothesis,一个有趣的 Python 库!
查看>>
python | Indico,一个超酷的 Python 库!
查看>>
python | isort,一个有趣的 自动整理导入语句 的Python 库!
查看>>
python | jinja,一个超酷的 Python 库!
查看>>
python | joblib,一个强大的 Python 库!
查看>>
python | jsonschema,一个实用的 验证 JSON 数据结构 Python 库!
查看>>
python | lxml,一个超酷的 关于XML/HTML 文档 Python 库!
查看>>
python | mplfinance,一个有趣的金融数据可视化 Python 库!
查看>>
python | nipy,一个强大的关于 神经影像数据分析 的Python 库!
查看>>
python | pendulum,一个有趣的 日期和时间 Python 库!
查看>>
python | pluginbase,一个神奇的 关于插件框架 的Python 库!
查看>>
python | pyparsing,一个强大的 Python 库!
查看>>
python | pyqtgraph,一个神奇的 Python 库!
查看>>
python读取文本文件数据
查看>>
python | Python mock对象与测试替身
查看>>
python | Python pandas实现数据追加和合并的最佳方法
查看>>
python | Python 中检查一个数字是否是三态数
查看>>