10 个版本
0.1.1-alpha.9 | 2024年3月30日 |
---|---|
0.1.0-alpha.1 | 2024年3月30日 |
在 内存管理 中排名第 272
5KB
lazy_heap
:围绕 slab_allocator_rs
的包装器,允许懒初始化
尽管在 crates.io 仓库中有许多全局分配器,但我用自家的内核代码摸索了3年,发现有时候,节省的时间越多,越好。因此,我在自己的内核代码中想出了这个方法,但鉴于它的实际用途非常广泛,决定向公众开放。
使用此crate允许您使用闭包在第一次尝试访问时自动(懒加载)初始化堆
use lazy_heap::LazyHeap;
#[global_allocator]
pub static ALLOC: LazyHeap = LazyHeap::new(|| {
// allocator initialization code goes here
});
这是一种比其他任何方法都更无缝、更少错误的方法来初始化堆分配,因为它可以保证,任何第一次尝试使用 alloc
都会自动为您初始化堆。
依赖项
~200KB