动机:我无法让谷歌cpu分析器在代码运行的机器上工作(用我最后一口气诅咒libunwind :)),所以我想知道gdb是否支持程序执行的高频随机暂停,存储发生中断的函数的名称,并计算它在函数x中暂停了多少次。 这就是我所说的“运行时间采样”,可能有更精确/更聪明的名称。 我看着oprofile的,但它是复杂的)计算出,如果能做到这一点二)弄清楚如何做到这一点 编辑:显然是正确的名称是: “统计抽样方法”GDB是否支持“运行时采样”或是否有用户“扩展”?
EDIT2 :为什么我提供了一个赏金,这是因为我看到一些脂肪酶在SO建议做手动休息10-20x和检查堆栈与Bt ... 似乎非常浪费时间,所以我觉得一些聪明的脂肪酶自动它。 :)
EDIT3:gprof不会削减它...我试图最近在ARM系统上运行它,并输出垃圾... :(我猜它与多线程的麻烦是原因...
如果您还没有尝试过,手动采样似乎很浪费。请参阅第1条评论[*此处*](http://stackoverflow.com/a/893272/23771)。 [*此答案*]的最后一段(http://stackoverflow.com/a/4832698/23771)。 [*此答案。*](http://stackoverflow.com/a/317160/23771)[*此答案。*](http://stackoverflow.com/a/2474118/23771)评论[* ErikE这里*](http://stackoverflow.com/a/378024/23771)。 codelidoo评论[*这里*](http://stackoverflow.com/a/3097542/23771)。尝试一下,然后弃用它。 –