Skip to content

Repository files navigation

linked-list-allocator

Crates.ioBuild Statusdocs.rs

Usage

Create a static allocator in your root module:

use linked_list_allocator::LockedHeap;#[global_allocator]staticALLOCATOR:LockedHeap = LockedHeap::empty();

Before using this allocator, you need to init it:

pubfninit_heap(){let heap_start = …;let heap_end = …;let heap_size = heap_end - heap_start;unsafe{ALLOCATOR.lock().init(heap_start, heap_size);}}

Features

  • use_spin (default): Provide a LockedHeap type that implements the GlobalAlloc trait by using a spinlock.
  • alloc_ref: Provide an implementation of the unstable AllocRef trait; requires nightly Rust.
    • Warning: The AllocRef trait is still regularly changed on the Rust side, so expect some regular breakage when using this feature.

License

This crate is dual-licensed under MIT or the Apache License (Version 2.0). See LICENSE-APACHE and LICENSE-MIT for details.

About

No description, website, or topics provided.

Resources

Stars

242 stars

Watchers

7 watching

Forks

Releases

Packages

Used by

Contributors

Languages