Crate stats_alloc
source · [−]Expand description
An instrumenting middleware for global allocators in Rust, useful in testing for validating assumptions regarding allocation patterns, and potentially in production loads to monitor for memory leaks.
Example
extern crate stats_alloc;
use stats_alloc::{Region, StatsAlloc, INSTRUMENTED_SYSTEM};
use std::alloc::System;
#[global_allocator]
static GLOBAL: &StatsAlloc<System> = &INSTRUMENTED_SYSTEM;
fn main() {
let reg = Region::new(&GLOBAL);
let x: Vec<u8> = Vec::with_capacity(1_024);
println!("Stats at 1: {:#?}", reg.change());
// Used here to ensure that the value is not
// dropped before we check the statistics
::std::mem::size_of_val(&x);
}
Structs
A snapshot of the allocation statistics, which can be used to determine
allocation changes while the Region
is alive.
Allocator statistics
An instrumenting middleware which keeps track of allocation, deallocation, and reallocation requests to the underlying global allocator.
Statics
An instrumented instance of the system allocator.