mirror of
https://github.com/servo/servo.git
synced 2025-08-03 04:30:10 +01:00
Various memory measurement improvements (#36834)
The two significant changes here are 1) a commit that frees memory used to perform memory reporting once the reporting is complete, 2) memory reporting for the system font service. There are various other commits that remove `#[ignore_malloc_size_of]` attributes for data that we are now able to measure, but they do not significantly change our measurements when testing servo.org. Testing: Comparing the output of about:memory on servo.org. --------- Signed-off-by: Josh Matthews <josh@joshmatthews.net>
This commit is contained in:
parent
e9f364ef51
commit
ba8f923201
19 changed files with 135 additions and 49 deletions
|
@ -10,6 +10,7 @@ pub(crate) use std::cell::{Ref, RefCell, RefMut};
|
|||
|
||||
#[cfg(feature = "refcell_backtrace")]
|
||||
pub(crate) use accountable_refcell::{Ref, RefCell, RefMut, ref_filter_map};
|
||||
use malloc_size_of::{MallocConditionalSizeOf, MallocSizeOfOps};
|
||||
#[cfg(not(feature = "refcell_backtrace"))]
|
||||
pub(crate) use ref_filter_map::ref_filter_map;
|
||||
|
||||
|
@ -24,6 +25,12 @@ pub(crate) struct DomRefCell<T> {
|
|||
value: RefCell<T>,
|
||||
}
|
||||
|
||||
impl<T: MallocConditionalSizeOf> MallocConditionalSizeOf for DomRefCell<T> {
|
||||
fn conditional_size_of(&self, ops: &mut MallocSizeOfOps) -> usize {
|
||||
self.value.borrow().conditional_size_of(ops)
|
||||
}
|
||||
}
|
||||
|
||||
// Functionality specific to Servo's `DomRefCell` type
|
||||
// ===================================================
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue