1 unstable release
0.1.0 | Apr 14, 2024 |
---|
#2230 in Asynchronous
8KB
176 lines
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.