pub fn wake_single_owner(&self) {
        let mut inner = self.inner.lock();
        let new_owner = inner.waiter_queue.pop_front().and_then(|waiter| {
            waiter.wake();
            waiter.thread.clone()
        });
        inner.set_owner(new_owner);
    }
/// Wake exactly one thread from the futex wait queue.
///
/// If there is at least one thread to wake, the owner of the futex will
/// be set to the thread which was woken. Otherwise, the futex will have
/// no owner.
///
/// # Ownership
///
/// If there is at least one thread to wake, the owner of the futex will be
/// set to the thread which was woken. Otherwise, the futex will have no owner.
Wake exactly one thread from the futex wait queue.
If there is at least one thread to wake, the owner of the futex will
be set to the thread which was woken. Otherwise, the futex will have
no owner.
Wake exactly one thread from the futex wait queue . If there is at least one thread to wake the owner of the futex will be set to the thread which was woken . Otherwise the futex will have no owner .
pub fn wake_single_owner(&self) {
        let mut inner = self.inner.lock();
        let new_owner = inner.waiter_queue.pop_front().and_then(|waiter| {
            waiter.wake();
            waiter.thread.clone()
        });
        inner.set_owner(new_owner);
    }
pub fn wake_single_owner ( & self ) { let mut inner = self . inner . lock ( ) ; let new_owner = inner . waiter_queue . pop_front ( ) . and_then ( | waiter | { waiter . wake ( ) ; waiter . thread . clone ( ) } ) ; inner . set_owner ( new_owner ) ; }
Wake exactly one thread from the futex wait queue.
Wake exactly one thread from the futex wait queue .
&self
&self
ownership
If there is at least one thread to wake, the owner of the futex will be
set to the thread which was woken. Otherwise, the futex will have no owner.
If there is at least one thread to wake the owner of the futex will be set to the thread which was woken . Otherwise the futex will have no owner .