wakerpool 0.1.0

lightweight object pool for lists of Wakers
Documentation
  • Coverage
  • 100%
    6 out of 6 items documented0 out of 5 items with examples
  • Size
  • Source code size: 13.48 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 2.1 MB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 10s Average build duration of successful builds.
  • all releases: 10s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • chadaustin/wakerpool
    1 0 0
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • chadaustin

Shared Future implementations, like channels, often store lists of [core::task::Waker]. This crate provides an efficient [WakerList] that avoids memory allocation under conditions where wakers are frequently stored and woken.

Nodes are stored in a thread-local object pool and backed by a global, lock-free pool.

NOTE: For efficiency and simplicity, this crate never deallocates nodes. If you expect to potentially store unbounded sets of Wakers, use a [std::vec::Vec].