Was ist "(Programm)" in der Funktionsspalte des Chrome-Debuggers?
javascript
google-chrome-devtools
hvgotcodes
quelle
quelle
Ich glaube, (Programm) ist nativer Code, nicht die Wurzel des Baumes.
Siehe diesen Thread:
https://bugs.webkit.org/show_bug.cgi?id=88446
Also eher wie Systemaufrufe als wie main ().
Anscheinend beinhaltet es Leerlaufzeit. Einige Profile von (program) sind auch unter chrome: // profiler / verfügbar
quelle
Wie @Nick sagt, muss es irgendwo anfangen.
Es sieht so aus, als ob der CPU Profiler-Teil wie so viele andere Profiler ist, die auf denselben Konzepten wie gprof basieren .
Zum Beispiel ist self fast eine nutzlose Zahl, es sei denn, in einem Code, den Sie bearbeiten können, befindet sich so etwas wie eine Blasensorte einer großen Anzahl von Zahlen. Sehr unwahrscheinlich.
Total sollte Callees enthalten, das ist also nützlicher. Sofern während der blockierten Zeit sowie während der Laufzeit keine Proben entnommen werden, ist dies mit Ausnahme von vollständig an die CPU gebundenen Programmen immer noch ziemlich nutzlos.
Sie erhalten diese Statistiken nach Funktion und nicht nach Codezeile. Das bedeutet (wenn Sie sich auf Total Prozent verlassen könnten ), dass eine Funktion so viel kostet, in dem Sinne, dass, wenn Sie es irgendwie dazu bringen könnten, keine Zeit in Anspruch zu nehmen, z. B. durch Stubben, dieses Prozent ist, wie viel Zeit Sie sparen würden.
Wenn Sie sich also auf eine kostspielige Funktion konzentrieren möchten, müssen Sie darin nach dem suchen, was optimiert werden könnte. Dazu müssen Sie wissen, wie die Zeit auf die Codezeilen in der Funktion aufgeteilt ist. Wenn Sie Kosten auf Codebasis hätten, würden Sie direkt zu diesen Zeilen gelangen.
Ich weiß nicht, ob Sie in der Lage sein werden, einen besseren Profiler zu erhalten, wie einen Wanduhr-Stack-Sampler, der auf Zeilenebene berichtet, wie z. B. Zoom . So mache ich es .
quelle