8 unstable releases (3 breaking)
Uses new Rust 2024
| 0.4.0 | Jan 8, 2026 |
|---|---|
| 0.3.0 | Sep 25, 2025 |
| 0.2.3 | Sep 23, 2025 |
| 0.2.2 | Aug 7, 2025 |
| 0.1.1 | Jul 31, 2025 |
#542 in Concurrency
773 downloads per month
160KB
4K
SLoC
Cynosure
A group of high performance, lightweight datastructures mostly optimized for usage in single-threaded async executors, but some structures can be used elsewhere. Zero dependencies by default.
The crate is split into site_c and site_d. site_c are single-thread only, and site_d
primitives work across multiple threads.
site_c
LocalCell:Rc<RefCell<T>>-like structure without runtime checks with scoped mutable access. Intentionally doesn't work over await points.LocalMutex: Fast single-threaded mutex. Use when you do want to hold over await points.LocalRwLock: Fast single-threaded reader-writer lock. Allows multiple concurrent readers or one exclusive writer.Queue: Double-ended queue that stores up to N items inline before spilling to heap.
site_d
RingBuf: lock-free SPSC ring buffer with async and sync support.TripleBuffer: lock-free SPSC asynchronous triple buffer
Dependencies
~0–11MB
~60K SLoC