什么是Chrome调试器的函数列中的“(程序)”?什么是Chrome调试器的分析器中的“(程序)”?
回答
(program)
是Chrome浏览器本身的树,并调用其他所有代码的根......它的存在,因为从本机代码的JavaScript,资源负载等跳跃已开始地方 :)
你可以看到树视图in the Chrome developer tool docs的示例。
正如@尼克所说,它必须从某个地方开始。
看起来CPU Profiler部分就像很多其他基于same concepts as gprof的分析器一样。
例如,self几乎是无用的数字,除非在某些代码中存在某种类似泡泡排序的数字,您可以编辑这些数字。不大可能。
总计应该包括被调用者,所以这更有用。但是,除非阻塞时间以及运行时间内采集样本,否则,除非完全是cpu-bound程序,否则它仍然是无用的。
它给你这些功能的统计资料,而不是按行代码。这意味着(如果你可以依靠总数百分比),一个函数的成本非常高,因为如果你能以某种方式让它花费零时间,比如通过剔除它,这个百分比是你可以节省多少时间。
所以,如果你想专注于一个昂贵的功能,你需要在它内部寻找可以优化的内容。为了做到这一点,您需要知道如何在函数中的代码行之间细分时间。如果你花费在一行代码基础上,它会直接把你带到这些线上。
我不知道您是否能够获得更好的分析器,例如在线级别报告挂钟采样器,如Zoom。这里是how I do it。
我可以得到一个更好的铬探查器? – hvgotcodes 2010-10-03 03:44:26
@hvgotcodes:不确定。我不使用它们,因为我只是在调试器中拍摄堆叠照片。但是你在Linux上,对吗?你可以得到Zoom的试用版吗?这个很不错。 – 2010-10-03 12:41:46
不是linux。苹果电脑。 – hvgotcodes 2010-10-03 13:58:06
我相信(程序)是本地代码,而不是树的根。
看到这个线程:
https://bugs.webkit.org/show_bug.cgi?id=88446
所以,更像是系统调用不是像主()。
显然它包括空闲时间。 (程序)的一些分析可以从chrome:// profiler/
同意 - 但只是一个更新:它不包括闲置时间了。现在分别报告为(闲置) – Gio 2014-06-13 10:44:25
- 1. 什么是适用于Windows的开源调试器和内存分析器?
- 2. dart调试器的状态是什么?
- 3. 此Chrome调试器VM脚本是什么?
- 4. 什么是Google Chrome DevTool调试器蓝色标记?
- 5. javascript chrome调试器equivelant PHP调试器
- 6. Google Chrome中是否有CSS调试器?
- 7. 什么是xcode 3.2.3分析器版本?
- 8. 在Linux服务器上运行的CUDA程序的远程调试和分析
- 9. XCode调试器:为什么只显示我的汇编程序?
- 10. Chrome的调试器中插入JavaScript
- 11. 调试(了解)什么是控制器
- 12. 为什么chrome分析器不能帮助调试我闲置的网站的不断cpu使用情况?
- 13. Mac上的原生(C/C++)应用程序的良好调试器是什么?
- 14. 什么是ASP.NET中的分区解析器?
- 15. 在Lucene中结合分析器的最佳实践是什么?
- 16. 什么是调试过程
- 17. 使用chrome调试器调试图标
- 18. 使用查询分析器调试存储过程的问题
- 19. 在C程序中调用调试器
- 20. Chrome JavaScript调试器中的“只是我的代码”
- 21. 什么可用于silverlight,M编程或ANTLR的解析器/词法分析器?
- 22. Chrome调试器挂起
- 23. Google chrome Javascript调试器
- 24. 为什么Symfony调试工具栏中的计时器(分析器)超过100%的时间?
- 25. 在Visual Studio中调试程序的最佳方式是什么?
- 26. ASP.Net Web应用程序的分析器?
- 27. 尝试调试Web服务应用程序时出现分析器错误
- 28. 词法分析器的目的是什么?
- 29. 什么是最好的XML解析器
- 30. 什么是独立的Java解析器?
啊 - 所以如果这是一个很高的百分比,有什么我可以做的吗? – hvgotcodes 2010-10-03 00:08:20
@hvgotcodes - 它听起来是下面所有部分的百分比。现在,如果* self *百分比很高,那么您可以做的事情就不多了......除非您的标记总体上非常重。 – 2010-10-03 00:09:38
您是否知道如何访问“(程序)”部分中的代码?不知何故,目前我正在从事的项目中的JavaScript部分最终会在那里完成,而我可以在调试器中完成的唯一方法就是放置“调试器”。进入代码,这是不是很舒服。 – 2012-06-19 12:37:39