正如标题所暗示的那样。许多解释都很模糊,任何人都可以提供更加可靠的定义吗?
该术语在Android测试中经常使用,但我不认为它仅限于该平台。
答案 0 :(得分:13)
一些性能测量工具会为代码添加工具。例如。它们可以进行二进制转换,并添加指令以在函数的开头和结尾读取定时器。或者,这种读取定时器的工具可以通过自动化工具或程序员添加到汇编或C代码中。
其他性能测量工具不会更改正在测量的代码。例如。 UNIX prof采样运行在定时器中断时调用的特殊代码,该代码中断生成接收中断的指令的直方图。
有些工具是混合的:例如UNIX gprof将prof风格的中断采样与编译器添加的mcount检测结合起来,使用-pg选项来计算哪些函数相互调用。
所有性能测量都有开销,但是仪器往往比基于中断的采样有更多的开销。另一方面,仪器可以测量更多的东西。
答案 1 :(得分:7)
好吧,我visited this link并且说:
在计算机编程的背景下,仪器指的是监控或测量产品性能水平,诊断错误和编写跟踪信息的能力。程序员以代码指令的形式实现仪器监视系统中的特定组件(例如,指令可能会输出记录信息以显示在屏幕上)。当应用程序包含检测代码时,可以使用管理工具对其进行管理。必须使用仪器来检查应用程序的性能。仪表方法可以有两种类型,源仪器和二进制仪表。
快乐编码
答案 2 :(得分:3)
答案 3 :(得分:3)
根据Oracle:
Instrumentation是为方法添加字节码 收集数据以供工具使用的目的。自改变以来 纯粹是添加剂,这些工具不会修改应用程序状态或 行为。此类良性工具的示例包括监控代理, 分析器,覆盖分析器和事件记录器。