Expand description
Object Pool
§Features
- Lock free, backed by concurrent safe queue.
- Builtin reference counter, no
Arc
wrapper required. - Simple APIs and support
no_std
environment. - Automatically put object back to pool.
§Installation
-
std
[dependencies] objectpool = "0.1"
-
no_std
[dependencies] objectpool = { version = "0.1", default-features = false, features = ["alloc"] }
§Tests
-
test
:cargo test
-
miri
:cargo miri test
-
loom
:cargo test --tests --features loom
§Benchmarks
For detailed reports, you can see the latest Benchmark GitHub Action, and download the Artifacts.
cargo bench
§Why this crate?
I need an object pool that supports the no_std
environment. Unfortunately, none of the object-pool
, lockfree-object-pool
and sharded-slab
support no_std
.
§License
objectpool
is under the terms of both the MIT license and the
Apache License (Version 2.0).
See LICENSE-APACHE, LICENSE-MIT for details.
Copyright (c) 2024 Al Liu.
Structs§
- Pool
- Lock-free object pool.
- Reusable
Object - A reusable
T
. - Reusable
Object Ref - A reusable
T
.