7 releases (4 breaking)
Uses old Rust 2015
0.5.1 | Aug 1, 2022 |
---|---|
0.5.0 | Jan 18, 2021 |
0.4.0 | Aug 22, 2020 |
0.3.0 | Jan 18, 2018 |
0.1.1 | Jan 28, 2017 |
#970 in Rust patterns
20,827 downloads per month
Used in 18 crates
(8 directly)
14KB
227 lines
A crate for things that are
- Lazily initialized
- Expensive to create
- Immutable after creation
- Used on multiple threads
Lazy<T>
is better than Mutex<Option<T>>
because after creation accessing
T
does not require any locking, just a single boolean load with
Ordering::Acquire
(which on x86 is just a compiler barrier, not an actual
memory barrier).