我目前正在使用Frame rootFrame = Window.Current.Content as Frame;
rootFrame.Navigate(typeof(Your Page Name));
和collect
在Solaris上分析C ++应用程序,但我只看到每个函数花费的秒数。
如何查看每个函数的调用次数?
我是否应该在命令行中添加任何选项以启用计数器?或者我应该使用不同的工具?
答案 0 :(得分:2)
collect
命令不起作用 - 它示例正在运行的可执行文件以获取它收集的调用堆栈数据。
您需要compile with -xpg
并在生成的输出数据文件中使用prof
或gprof
。
像这样的dtrace脚本也会收集函数调用次数:
countfuncs.d:
pid$target:::entry
{
@[ probefunc ] = count();
}
然后运行:
dtrace -s countfuncs.d -c your_program ...
根据我的经验,计算函数被调用的次数并不重要 - 它是在任何重要的函数中花费多少 time (CPU或挂钟)。如果一个函数占用了90%的执行时间,那么这就是你花费精力优化性能的地方,无论函数被调用一次还是数十亿次。如果函数占用执行时间的0.001%,无论调用多少次都不会打扰它。