pub struct CommonPatterns;
Expand description
Fast path optimizations for common patterns.
Implementations§
Source§impl CommonPatterns
impl CommonPatterns
Sourcepub fn optimized_spin_wait<F>(condition: F, max_spins: u32) -> bool
pub fn optimized_spin_wait<F>(condition: F, max_spins: u32) -> bool
Optimized spin-wait with exponential backoff.
Sourcepub fn fast_double_checked_lock<T, F>(
flag: &AtomicUsize,
initializer: F,
) -> boolwhere
F: FnOnce() -> T,
pub fn fast_double_checked_lock<T, F>(
flag: &AtomicUsize,
initializer: F,
) -> boolwhere
F: FnOnce() -> T,
Fast double-checked locking pattern.
Sourcepub fn bounded_cas_loop<T, F>(
atomic: &AtomicUsize,
updater: F,
max_retries: u32,
) -> Result<usize, usize>
pub fn bounded_cas_loop<T, F>( atomic: &AtomicUsize, updater: F, max_retries: u32, ) -> Result<usize, usize>
Fast compare-and-swap loop with bounded retries.
Auto Trait Implementations§
impl Freeze for CommonPatterns
impl RefUnwindSafe for CommonPatterns
impl Send for CommonPatterns
impl Sync for CommonPatterns
impl Unpin for CommonPatterns
impl UnwindSafe for CommonPatterns
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more