fn disconnect(&self) {
        let tail = self.tail.fetch_or(self.mark_bit, Ordering::SeqCst);

        if tail & self.mark_bit == 0 {
            // Notify everyone blocked on this channel.
            self.send_ops.notify_all();
            self.sink_ops.notify_all();
            self.recv_ops.notify_all();
            self.next_ops.notify_all();
            if let Some(h) = &self.handoff {
                h.notify_all();
            }
        }
    }
/// Disconnects the channel and wakes up all blocked operations.
Disconnects the channel and wakes up all blocked operations.
Disconnects the channel and wakes up all blocked operations .
fn disconnect(&self) {
        let tail = self.tail.fetch_or(self.mark_bit, Ordering::SeqCst);
        if tail & self.mark_bit == 0 {
            // Notify everyone blocked on this channel.
            self.send_ops.notify_all();
            self.sink_ops.notify_all();
            self.recv_ops.notify_all();
            self.next_ops.notify_all();
            if let Some(h) = &self.handoff {
                h.notify_all();
            }
        }
    }
fn disconnect ( & self ) { let tail = self . tail . fetch_or ( self . mark_bit , Ordering :: SeqCst ) ; if tail & self . mark_bit == 0 { // Notify everyone blocked on this channel. self . send_ops . notify_all ( ) ; self . sink_ops . notify_all ( ) ; self . recv_ops . notify_all ( ) ; self . next_ops . notify_all ( ) ; if let Some ( h ) = & self . handoff { h . notify_all ( ) ; } } }
Disconnects the channel and wakes up all blocked operations.
Disconnects the channel and wakes up all blocked operations .
&self