pub struct Until<C: Publisher, F> { /* private fields */ }Expand description
Notify dispatcher that includes the boolean condition being awaited.
The basic idea is to reduce the number of spurious reactivations of waiting
continuations by checking if the condition being awaited evaluated to true for the
specific state-change triggering the re-evaluation and not re-awakening the
continuation if it doesn’t.
Even if it does, the re-awakened continuation still needs to check the condition since its truth value may have changed between the scheduling and the activation, but this technique still has the potential to cut down on a lot of superfluous scheduling operations.
Implementations§
Trait Implementations§
impl<'pin, C: Publisher, F> Unpin for Until<C, F>where
PinnedFieldsOf<__Until<'pin, C, F>>: Unpin,
Auto Trait Implementations§
impl<C, F> !Freeze for Until<C, F>
impl<C, F> !RefUnwindSafe for Until<C, F>
impl<C, F> Send for Until<C, F>
impl<C, F> !Sync for Until<C, F>
impl<C, F> UnwindSafe for Until<C, F>
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
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<F> IntoFuture for Fwhere
F: Future,
impl<F> IntoFuture for Fwhere
F: Future,
Source§type IntoFuture = F
type IntoFuture = F
Which kind of future are we turning this into?
Source§fn into_future(self) -> <F as IntoFuture>::IntoFuture
fn into_future(self) -> <F as IntoFuture>::IntoFuture
Creates a future from a value. Read more