4个版本 (2个破坏性更新)
使用旧版Rust 2015
0.3.0 | 2018年2月22日 |
---|---|
0.2.1 | 2017年5月24日 |
0.2.0 | 2017年5月12日 |
0.1.0 | 2017年5月12日 |
在内存管理类别中排名第724
每月下载量23次
在arendur中使用
17KB
322行代码(不包括注释)
aren_alloc
基于对象池概念的线程局部内存分配器,用于解决arendur
的内存分配需求。
当以下条件满足时,此crate很有用:
- 你需要频繁创建和销毁一些对象
- 这些对象是可复制的,大小小于256字节
- 你希望底层内存被重用
- 你希望有一个通用的池接口,而不是类型化的接口
用法
use aren_alloc::Allocator;
#[derive(Copy, Clone)]
struct Point(u32, u32);
let allocator = Allocator::new();
let p = allocator.alloc(Point(1, 2));
assert_eq!(p.0, 1);
assert_eq!(p.1, 2);
由于支持Pointer
的CoerceUnsized
,编译需要使用nightly版本。
许可证
本项目根据MIT许可证和Apache许可证(版本2.0)的条款进行分发。
请参阅LICENSE-APACHE,LICENSE-MIT以获取详细信息。