fn stop_waking(&self) -> u8 {
        let value = self
            .state
            .fetch_update(Ordering::SeqCst, Ordering::SeqCst, |value| {
                let next_value = value & !WAKING | WOKEN;

                if next_value != value {
                    Some(next_value)
                } else {
                    None
                }
            })
            .unwrap_or_else(identity);

        debug_assert!(value & (WOKEN | POLLING | WAKING) == WAKING);
        value
    }
/// Toggles state to non-waking, allowing to start polling.
Toggles state to non-waking, allowing to start polling.
Toggles state to non - waking allowing to start polling .
fn stop_waking(&self) -> u8 {
        let value = self
            .state
            .fetch_update(Ordering::SeqCst, Ordering::SeqCst, |value| {
                let next_value = value & !WAKING | WOKEN;
                if next_value != value {
                    Some(next_value)
                } else {
                    None
                }
            })
            .unwrap_or_else(identity);
        debug_assert!(value & (WOKEN | POLLING | WAKING) == WAKING);
        value
    }
fn stop_waking ( & self ) -> u8 { let value = self . state . fetch_update ( Ordering :: SeqCst , Ordering :: SeqCst , | value | { let next_value = value & ! WAKING | WOKEN ; if next_value != value { Some ( next_value ) } else { None } } ) . unwrap_or_else ( identity ) ; debug_assert ! ( value ( WOKEN POLLING WAKING ) WAKING ) ; value }
Toggles state to non-waking, allowing to start polling.
Toggles state to non - waking allowing to start polling .
&self
&self