pub struct Pool {
listener: i32,
token: Mutex<()>,
park: Mutex<()>,
cv: Condvar,
parked: AtomicUsize,
closed: AtomicBool,
budget: AtomicU64,
}Expand description
The listener pool; see start.
Fields§
§listener: i32§token: Mutex<()>§park: Mutex<()>§cv: Condvar§parked: AtomicUsize§closed: AtomicBool§budget: AtomicU64Current spin budget in microseconds, 0..=spin_us.
Implementations§
Source§impl Pool
impl Pool
Sourcepub fn wait_closed(&self)
pub fn wait_closed(&self)
Blocks until the pool has shut down, i.e. no process uses the filter any more.
The wait is on the listener’s POLLHUP, which closes the pool too: a thread already
blocked in RECV when the last process left the filter is not woken by the hangup on
every kernel (6.8 wakes a receiver only for EPOLLIN or EPOLLERR), and would hold
the supervisor up for good. A poll for no events wakes for the hangup alone.
Auto Trait Implementations§
impl !Freeze for Pool
impl RefUnwindSafe for Pool
impl Send for Pool
impl Sync for Pool
impl Unpin for Pool
impl UnsafeUnpin for Pool
impl UnwindSafe for Pool
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