0

我正在学习DTrace,它是非常强大的工具。但一个问题是 DTrace 输出的信息太多,其中大部分是 NS 类。

但我的问题是,如果用户的类没有正确的前缀,我如何过滤系统类?

(这个主题有一个类似的 Stack Overflow 问题,[How to detect without the system method or system framework with DTrace on Mac OS X?]。)

4

1 回答 1

0

DTrace 使用类似文件名生成的语法来指定探测名称。例如,您可以使用方括号[和. 指定类名的第一个字符]

例如,如果你想过滤所有 NS* 类:

objc$target::[ABCDEFGHIJKLMOPQRSTUVWXYZ]*:entry (N is removed)
objc$target::N[ABCDEFGHIJKLMNOPQRTUVWXYZ]*:entry (S is removed)

但是您必须为 Apple 使用的每个前缀重复它,例如 CA、IK 等。

于 2011-11-16T19:18:05.177 回答