JS的Chrome CPU Profile中的'self'和'total'之间的区别

Coo*_*ame 225 javascript profiling google-chrome

JS代码的Chrome CPU分析中的"自我"和"总"列之间有什么区别?

在此输入图像描述

dus*_*uff 300

self 是直接在该功能中工作的时间.

total 是在该函数及其调用的函数中花费了多少时间.

  • 顺便说一句,因为人们似乎发现这是一个有用的答案:一般情况下,分析师也是如此,而不仅仅是在Chrome中. (41认同)
  • 所以self只是内联语句,而不是函数调用?总计是在调用中执行的所有代码吗? (11认同)
  • 没错,就是这样. (3认同)
  • 如果一个函数递归调用自己会发生什么?那您如何正确阅读呢? (2认同)
  • 文档链接位于[此处(在“查看功能详细信息”部分中)](https://developers.google.com/web/tools/chrome-devtools/rendering-tools/js-execution)。**`Self time` **:_完成当前调用该函数所花的时间,仅包括函数本身中的语句,不包括其调用的任何函数。_** Total time` **:_The完成此函数及其调用的任何函数的当前调用所花费的时间。 (2认同)

JSO*_*C11 9

自身时间:对于一个函数,是在函数(内联语句)中执行代码的时间。 检查各个功能的性能称为自下而上的分析。

总时间:对于一个函数,是该函数的自身时间和该函数调用的所有函数的自身时间。 自上而下的分析是检查功能及其被调用者的性能。

注意:仅仅因为一个函数的自用时间长,并不意味着该函数本身效率低下。查看该函数被调用多少次也很重要。

英特尔的文章