4 releases

0.3.2 Mar 31, 2020
0.3.1 Mar 31, 2020
0.3.0 Mar 31, 2020
0.2.0 Mar 27, 2020

#634 in Memory management

Download history 130/week @ 2023-12-22 42/week @ 2023-12-29 91/week @ 2024-01-05 136/week @ 2024-01-12 287/week @ 2024-01-19 341/week @ 2024-01-26 485/week @ 2024-02-02 365/week @ 2024-02-09 170/week @ 2024-02-16 206/week @ 2024-02-23 127/week @ 2024-03-01 256/week @ 2024-03-08 247/week @ 2024-03-15 155/week @ 2024-03-22 157/week @ 2024-03-29 109/week @ 2024-04-05

697 downloads per month
Used in 7 crates (2 directly)

MIT license

19KB
396 lines

A growable pool of reusable values

(originally based on the pool crate)

A Rust library providing a pool structure for managing reusable values. All values in the pool are initialized when the pool is created. Values can be checked out from the pool at any time. When the checked out value goes out of scope, the value is returned to the pool and made available for checkout at a later time.

The pool can allocate memory as need, up to a maximum number of elements. Growing the pool does not require copying or moving memory.

Build Status

Usage

To use poule, first add this to your Cargo.toml:

[dependencies]
poule = "0.3.0"

Then, add this to your crate root:

extern crate poule;

Features

  • Simple
  • Lock-free: values can be returned to the pool across threads
  • Stores typed values and / or slabs of memory

Dependencies

~42KB