#memory-allocator #allocator #memory #global-allocator #count #byte #accounting

会计分配器

一个全局内存分配器包装器,用于计算分配和释放的字节数

2个不稳定版本

0.2.0 2022年12月13日
0.1.0 2022年11月28日

#657 in 内存管理

Download history 14/week @ 2024-03-13 152/week @ 2024-03-20 47/week @ 2024-03-27 54/week @ 2024-04-03 32/week @ 2024-04-10 23/week @ 2024-04-17 25/week @ 2024-04-24 1/week @ 2024-05-01 4/week @ 2024-05-08 14/week @ 2024-05-15 36/week @ 2024-05-22 45/week @ 2024-05-29 21/week @ 2024-06-05 11/week @ 2024-06-12 11/week @ 2024-06-19 8/week @ 2024-06-26

57 每月下载量

MIT 许可证

22KB
369

会计分配器

一个Rust全局内存分配器包装器,用于计算分配和释放的字节数,避免了线程之间的竞争。

会计分配器通过使用每个线程的原子计数器来避免竞争。它会产生较小的全局和每个线程的初始化开销。

API文档
私有文档

贡献错误报告

GitHub是项目的错误跟踪器。请在 提交新的错误报告 之前,先 搜索 类似的现有问题。

许可证

许可协议 MIT


lib.rs:

会计分配器 是一个全局内存分配器包装器,用于计算分配和释放的字节数。

用法

use accounting_allocator::{AccountingAlloc, AllTimeAllocStats};

#[global_allocator]
static GLOBAL_ALLOCATOR: AccountingAlloc = AccountingAlloc::new();

fn main() {
    let AllTimeAllocStats { alloc, dealloc, largest_alloc } = GLOBAL_ALLOCATOR.count().all_time;
    println!("alloc {alloc} dealloc {dealloc} largest_alloc {largest_alloc}");
}

依赖关系

~395KB