mirror of
https://github.com/servo/servo.git
synced 2025-06-06 16:45:39 +00:00
Add an about:memory page (#35728)
This patch exposes a servo internal DOM API that is only made available to about: pages on the navigator object to request memory reports. The about:memory page itself is loaded like other html resources (eg. bad cert, net error) and makes use of this new API. On the implementation side, notable changes: - components/script/routed_promise.rs abstracts the setup used to fulfill a promise when the work needs to be routed through the constellation. The goal is to migrate other similar promise APIs in followup (eg. dom/webgpu/gpu.rs, bluetooth.rs). - a new message is added to request a report from the memory reporter, and the memory reporter creates a json representation of the set of memory reports. - the post-processing of memory reports is done in Javascript in the about-memory.html page, providing the same results as the current Rust code that outputs to stdout. We can decide later if we want to remove the current output. Signed-off-by: webbeef <me@webbeef.org>
This commit is contained in:
parent
1864ebfb35
commit
139774e6b5
17 changed files with 425 additions and 1 deletions
|
@ -1735,6 +1735,11 @@ where
|
|||
}
|
||||
},
|
||||
FromScriptMsg::IFrameSizes(iframe_sizes) => self.handle_iframe_size_msg(iframe_sizes),
|
||||
FromScriptMsg::ReportMemory(sender) => {
|
||||
// get memory report and send it back.
|
||||
self.mem_profiler_chan
|
||||
.send(mem::ProfilerMsg::Report(sender));
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue