#memory-allocator #limit #tracking #track #another #wraps

cap

一种可以跟踪和限制内存使用的分配器。此crate提供了一个泛型分配器,它包装了另一个分配器,跟踪内存使用情况,并允许设置限制。

3个版本

0.1.2 2023年3月26日
0.1.1 2022年8月15日
0.1.0 2019年10月21日

#119 in 内存管理

Download history 2177/week @ 2024-04-23 2062/week @ 2024-04-30 2303/week @ 2024-05-07 2562/week @ 2024-05-14 1955/week @ 2024-05-21 2209/week @ 2024-05-28 1989/week @ 2024-06-04 1800/week @ 2024-06-11 2256/week @ 2024-06-18 2500/week @ 2024-06-25 2480/week @ 2024-07-02 2837/week @ 2024-07-09 2416/week @ 2024-07-16 2744/week @ 2024-07-23 2830/week @ 2024-07-30 2703/week @ 2024-08-06

11,136 每月下载次数
6 crates 中使用

MIT/Apache

17KB
413 代码行

cap

Crates.io MIT / Apache 2.0 licensed Build Status

文档

一种可以跟踪和限制内存使用的分配器。

此crate提供了一个泛型分配器,它包装了另一个分配器,跟踪内存使用情况,并允许设置限制。

示例

它可以通过声明一个静态变量并使用 #[global_allocator] 属性来使用。

use std::alloc;
use cap::Cap;

#[global_allocator]
static ALLOCATOR: Cap<alloc::System> = Cap::new(alloc::System, usize::max_value());

fn main() {
    // Set the limit to 30MiB.
    ALLOCATOR.set_limit(30 * 1024 * 1024).unwrap();
    // ...
    println!("Currently allocated: {}B", ALLOCATOR.allocated());
}

许可

许可方式为以下之一:

任选其一。

除非你明确说明,否则根据Apache-2.0许可证定义的,你有意提交的任何贡献,都应按照上述方式双重许可,而无需任何附加条款或条件。

无运行时依赖

特性