pub struct FlushTimer {
deadline: Option<Instant>,
sleep: Option<Pin<Box<Sleep>>>,
}Expand description
Maintains one reusable timer for the current flush deadline.
Creating a timer does not require a Tokio runtime. Arming it requires a Tokio runtime with time enabled. Disabling retains the allocation for the next arm.
Fields§
§deadline: Option<Instant>§sleep: Option<Pin<Box<Sleep>>>Implementations§
Source§impl FlushTimer
impl FlushTimer
Sourcepub fn set_deadline(&mut self, deadline: Option<Instant>)
pub fn set_deadline(&mut self, deadline: Option<Instant>)
Arms or disables the timer, resetting its sleep only when the deadline changes.
§Panics
Arming for the first time panics outside a Tokio runtime with time enabled.
Trait Implementations§
Source§impl Default for FlushTimer
impl Default for FlushTimer
Source§fn default() -> FlushTimer
fn default() -> FlushTimer
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl !RefUnwindSafe for FlushTimer
impl !UnwindSafe for FlushTimer
impl Freeze for FlushTimer
impl Send for FlushTimer
impl Sync for FlushTimer
impl Unpin for FlushTimer
impl UnsafeUnpin for FlushTimer
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