是否有仪器仪器记录我的应用程序中的所有呼叫

时间:2017-06-06 16:10:11

标签: ios xcode instruments xcode-instruments

Xcode Instruments中是否有一个工具记录了我的代码所做的所有调用(有或没有Apple自己的框架)。

最接近的仪器是Time Profiler 但是,Time Profiler不会记录您自己的代码中的所有调用。所有Time Profiler都会按给定的时间间隔拍摄堆栈的快照。

我猜你们中的一些人可能会建议改变Time Profiler上的“采样间隔”,也许可能是可行的,但是没有一种工具可以在你的代码中记录所有的调用。这似乎是非常有用的,这使得很难相信没有这样的工具。

我已经尝试制作自己的DTrace乐器,但无论我做什么,我都会收到消息,说明所述乐器在任何配置下都无法运行。

另一个选项,也不起作用,是暂停调试器,在LLDB提示符下,在我感兴趣的代码上设置断点,并向这些断点添加命令,以便在它们被击中时,他们吐出框架信息,基本上告诉我调用的顺序。

不幸的是,该功能已经停止使用Xcode的几个版本。 我有50分的赏金在这里解释这个问题......

lldb breakpoint commands not working in XCode 8

1 个答案:

答案 0 :(得分:1)

此答案并不保证会捕获“所有来电”,但使用延迟模式录音会为您提供更详细的样本。

  

延迟模式:选择推迟数据分析,直到数据收集完成。这可以导致更快,更准确的数据收集,因为更多的系统资源是针对正在记录的过程。

它位于“录制选项”窗格中,但并非适用于所有乐器。但它确实对Time Profiler有帮助。