#buffer #heap #allocating #heap-allocated #heap-memory #wrapper #reallocating

nightly membuf

堆缓冲区分配和重新分配的安全包装器

5个版本

使用旧的Rust 2015

0.0.5 2015年7月4日
0.0.4 2015年7月4日
0.0.3 2015年5月6日
0.0.2 2015年5月6日
0.0.1 2015年5月6日

#2463 in 算法

MIT 协议

16KB
206

membuf

堆缓冲区分配、重新分配和释放的安全包装器。

概述

围绕Ts堆分配缓冲区的安全包装器,仅跟踪容量。

MemBuf不对该内存的实际内容做出任何承诺,这取决于结构的使用者,可以使用标准指针工具进行操作,通过MemBuf<T>的impl获取,对于Deref<Target=*mut T>

您可以将MemBuf<T>视为Box<[T]>的近似,其中元素的有效性/初始化不能保证。它旨在用作其他集合的构建块,这样它们就不必关心分配、重新分配和释放内存的细节。

但是,请注意,MemBuf<T>没有析构函数,并实现了Copy,因此它没有实现SendSync,如果用户希望释放内存,则必须调用deallocate

还有一个UniqueBuf<T>,它没有实现Copy,实现了SendSync,并有一个负责释放的析构函数。

用法

使用crates.io仓库;将其添加到您的Cargo.toml中,与其他依赖项一起

[dependencies]
membuf = "*"

作者

Jonathan Reem是membuf的主要作者和维护者。

许可协议

MIT

无运行时依赖