You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Because handlers did not recreate instance variables like maps and
arrays, we had to clone the data after parsing to ensure if you then
import another trace, the handlers don't mutate previous trace data.
This CL updates each handler to create new instances of data, meaning
the worry about subsequent trace parsing mutating previous ones is
removed, and we can remove the requirement to clone any data after
parsing.
On a 400mb trace of Figma, this knocks ~200ms off the total time. Not
only do we not have to clone, but we also avoid the nested clones in the
RendererHandler `data()` call, which saves us ~50ms of work every time
it is called (which is 4 times as other handlers depend on it).
R=cjamcl@chromium.org
Fixed: 41484172
Bug: 436491188
Change-Id: Ie989c6d2c8d66e1b091b4d93e387dadb1b0b1be8
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6897737
Auto-Submit: Jack Franklin <jacktfranklin@chromium.org>
Reviewed-by: Connor Clark <cjamcl@chromium.org>
Commit-Queue: Connor Clark <cjamcl@chromium.org>
0 commit comments