9个版本
使用旧Rust 2015
0.4.1 | 2019年1月9日 |
---|---|
0.4.0 | 2019年1月6日 |
0.3.4 | 2017年6月13日 |
0.3.3 | 2016年12月13日 |
0.1.0 | 2016年12月7日 |
#734 in 内存管理
1,833 每月下载量
在 9 个crates中使用 (3 个直接使用)
17KB
381 行
slice-pool
Rust库,用于将切片用作内存池。
文档
安装
将此添加到您的 Cargo.toml
[dependencies]
slice-pool = "0.4.1"
并添加到您的crate根目录
extern crate slice_pool;
lib.rs
:
此crate提供使用可切片类型作为池底层内存的功能。
分配的内存可以是任何类型的可变切片。
use slice_pool::sync::SlicePool;
let values = vec![10, 20, 30, 40, 50, 60, 70, 80, 90, 100];
let mut memory = SlicePool::new(values);
assert_eq!(memory.len(), 10);
// Not enough memory available (only 10 elements)
assert!(memory.alloc(11).is_none());
let mut first = memory.alloc(2).unwrap();
assert_eq!(*first, [10, 20]);
first[1] = 15;
assert_eq!(*first, [10, 15]);
let mem2 = memory.alloc(5).unwrap();
assert_eq!(*mem2, [30, 40, 50, 60, 70]);