pub struct TimeLimit { /* private fields */ }Expand description
Time limit tracker for a running task
Implementations§
Source§impl TimeLimit
impl TimeLimit
Sourcepub fn new(task_id: impl Into<String>, config: TimeLimitConfig) -> Self
pub fn new(task_id: impl Into<String>, config: TimeLimitConfig) -> Self
Create a new time limit tracker
Sourcepub fn with_start_time(
task_id: impl Into<String>,
config: TimeLimitConfig,
started_at: Instant,
) -> Self
pub fn with_start_time( task_id: impl Into<String>, config: TimeLimitConfig, started_at: Instant, ) -> Self
Create with specific start time (for testing)
Sourcepub fn elapsed_seconds(&self) -> u64
pub fn elapsed_seconds(&self) -> u64
Get elapsed time in seconds
Sourcepub fn check(&self) -> TimeLimitStatus
pub fn check(&self) -> TimeLimitStatus
Check current time limit status
Sourcepub fn check_exceeded(&self) -> Option<TimeLimitExceeded>
pub fn check_exceeded(&self) -> Option<TimeLimitExceeded>
Check and return error if limit exceeded
Sourcepub const fn soft_limit_warned(&self) -> bool
pub const fn soft_limit_warned(&self) -> bool
Check if soft limit was already warned
Sourcepub fn mark_soft_limit_warned(&mut self)
pub fn mark_soft_limit_warned(&mut self)
Mark soft limit as warned
Sourcepub fn time_until_soft_limit(&self) -> Option<Duration>
pub fn time_until_soft_limit(&self) -> Option<Duration>
Get remaining time until soft limit
Sourcepub fn time_until_hard_limit(&self) -> Option<Duration>
pub fn time_until_hard_limit(&self) -> Option<Duration>
Get remaining time until hard limit
Sourcepub fn config(&self) -> &TimeLimitConfig
pub fn config(&self) -> &TimeLimitConfig
Get the configuration
Trait Implementations§
Auto Trait Implementations§
impl Freeze for TimeLimit
impl RefUnwindSafe for TimeLimit
impl Send for TimeLimit
impl Sync for TimeLimit
impl Unpin for TimeLimit
impl UnwindSafe for TimeLimit
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