0.1.1 |
|
---|---|
0.1.0 |
|
#48 在 #memory-pool
4KB
56 代码行
Arena-rs
Arena-rs 是一个用于快速 Rust 堆分配和释放的竞技场内存池。
这允许数据即时分配并在批量中销毁。
创建竞技场
let mut arena = Arena::new(1024 /* size in bytes*/);
分配数据
let value = arena.alloc(17)?;
assert_eq!(*value, 17);
释放数据
{
let arena = Arena::new(1024);
} // <- All data in arena is deallocated here
安全性
let arena = Arena::new(1024);
let value = arena.alloc(17)?;
move_arena(arena);
println!("{}", *value); // <- Compiler Error
// The arena was destroyed when we gave it to `move_arena`
// so we cannot use any data it gave to us