6个版本
0.6.0 | 2024年7月14日 |
---|---|
0.5.4 | 2023年7月27日 |
0.5.0 | 2022年5月24日 |
0.4.2 | 2021年8月9日 |
0.4.0 | 2020年7月21日 |
#266 in 内存管理
661,258 每月下载量
在 81 个crates中使用(直接使用17个)
2MB
52K SLoC
jemalloc-ctl
jemalloc的
mallctl*()
控制和分析API的安全包装。
文档
平台支持
支持所有由tikv-jemallocator
crate支持的平台。
示例
use std::thread;
use std::time::Duration;
use tikv_jemalloc_ctl::{stats, epoch};
#[global_allocator]
static ALLOC: tikv_jemallocator::Jemalloc = tikv_jemallocator::Jemalloc;
fn main() {
// Obtain a MIB for the `epoch`, `stats.allocated`, and
// `atats.resident` keys:
let e = epoch::mib().unwrap();
let allocated = stats::allocated::mib().unwrap();
let resident = stats::resident::mib().unwrap();
loop {
// Many statistics are cached and only updated
// when the epoch is advanced:
e.advance().unwrap();
// Read statistics using MIB key:
let allocated = allocated.read().unwrap();
let resident = resident.read().unwrap();
println!("{} bytes allocated/{} bytes resident", allocated, resident);
thread::sleep(Duration::from_secs(10));
}
}
许可证
本项目采用以下任一许可证:
- Apache License, Version 2.0,(LICENSE-APACHE 或 http://www.apache.org/licenses/LICENSE-2.0)
- MIT许可证(LICENSE-MIT 或 http://opensource.org/licenses/MIT)
任选其一。
贡献
除非你明确声明,否则任何有意提交给jemalloc-ctl
并由你提交的贡献,根据Apache-2.0许可证定义,将以上双重许可,不附加任何额外条款或条件。