#分配 #内存 #可观察性

tracking-allocator

提供跟踪分配事件的钩子的全局分配器

6个版本 (3个破坏性更新)

0.4.0 2022年7月1日
0.3.0 2022年5月12日
0.2.0 2022年5月11日
0.1.2 2021年10月5日

#282内存管理

Download history • Rust 包仓库 69/week @ 2024-03-11 • Rust 包仓库 146/week @ 2024-03-18 • Rust 包仓库 106/week @ 2024-03-25 • Rust 包仓库 290/week @ 2024-04-01 • Rust 包仓库 328/week @ 2024-04-08 • Rust 包仓库 86/week @ 2024-04-15 • Rust 包仓库 130/week @ 2024-04-22 • Rust 包仓库 97/week @ 2024-04-29 • Rust 包仓库 104/week @ 2024-05-06 • Rust 包仓库 50/week @ 2024-05-13 • Rust 包仓库 25/week @ 2024-05-20 • Rust 包仓库 98/week @ 2024-05-27 • Rust 包仓库 44/week @ 2024-06-03 • Rust 包仓库 12/week @ 2024-06-10 • Rust 包仓库 176/week @ 2024-06-17 • Rust 包仓库 69/week @ 2024-06-24 • Rust 包仓库

每月306次下载

MPL-2.0 许可证

43KB
536

tracking-allocator

一个与 GlobalAlloc 兼容的分配器实现,提供了跟踪分配事件的能力。

示例

由于分配器是特定的代码片段,我们在 examples/ 文件夹中包含了一个示例,以展示如何使用 tracking_allocator,而不是在README中放置简短片段。它有详细的文档,并解释了使用此crate的细节以及可以实现的内容。

实际的Rust级别文档是存在的,并且希望它是清晰简洁的,但示例旨在说明如何使用该crate,Rust级别文档作为一种“那类型签名是什么?”风格的参考。

运行示例时,您应该会看到类似于以下输出的内容

allocation -> addr=0x55e882b744f0 size=80 group_id=Some(0) tags=None
deallocation -> addr=0x55e882b74490
allocation -> addr=0x55e882b74550 size=12 group_id=Some(1) tags=None
allocation -> addr=0x55e882b74570 size=96 group_id=Some(1) tags=None
deallocation -> addr=0x55e882b74550
deallocation -> addr=0x55e882b74570

依赖

~0–280KB