#memory #alloc #globalalloc #allocator

bulk_allocator

实现包含内存缓存的 GlobalAlloc

6 个版本 (重大更新)

0.5.2 2023年8月14日
0.5.1 2023年8月14日
0.4.1 2023年2月25日
0.3.0 2021年1月29日
0.1.0 2020年7月24日

#148 in 内存管理

LGPL-3.0-or-later OR Apache-2.0

110KB
2.5K SLoC

bulk_allocator

bulk-allocator 提供了 GlobalAlloc 的实现,包含内存缓存。该实例从后端获取内存块,并在释放时一次性释放以提高性能。

方法 dealloc 不会立即释放指定的指针,而是将其存储在缓存中。

方法 alloc 从后端获取内存块并将其存储到缓存中,如果缓存为空,然后从缓存中弹出并返回指针。

当实例释放时,内存块被释放。

许可证:LGPL-3.0-or-later OR Apache-2.0


lib.rs:

bulk-allocator 提供了管理内存缓存的 GlobalAlloc 实现。该实例从后端获取内存块,并在释放时一次性释放以提高性能。

方法 dealloc 不会立即释放指定的指针;相反,它将指针存储在缓存中。

方法 alloc 从后端获取内存块并在必要时填充缓存,然后从缓存中返回请求的指针。

当实例释放时,内存块被释放。

无运行时依赖项