pub struct ThreadCpuClock;Expand description
The CPU time the calling thread has used, CLOCK_THREAD_CPUTIME_ID.
Read through a system call, not the fast path the clocks above take. Two readings on two threads count two different times.
§Examples
use core::hint::black_box;
use t2t_clock::{Clock, ThreadCpuClock};
use t2t_core::Timedelta;
let start = ThreadCpuClock.now();
for value in 0_u64..1_000_000 {
black_box(value);
}
assert!(ThreadCpuClock.now() - start > Timedelta::ZERO, "the loop took CPU time");Trait Implementations§
Source§impl Clock for ThreadCpuClock
impl Clock for ThreadCpuClock
Source§impl Clone for ThreadCpuClock
impl Clone for ThreadCpuClock
impl Copy for ThreadCpuClock
Source§impl Debug for ThreadCpuClock
impl Debug for ThreadCpuClock
Source§impl Default for ThreadCpuClock
impl Default for ThreadCpuClock
impl Eq for ThreadCpuClock
Source§impl Hash for ThreadCpuClock
impl Hash for ThreadCpuClock
Source§impl PartialEq for ThreadCpuClock
impl PartialEq for ThreadCpuClock
impl StructuralPartialEq for ThreadCpuClock
Auto Trait Implementations§
impl Freeze for ThreadCpuClock
impl RefUnwindSafe for ThreadCpuClock
impl Send for ThreadCpuClock
impl Sync for ThreadCpuClock
impl Unpin for ThreadCpuClock
impl UnsafeUnpin for ThreadCpuClock
impl UnwindSafe for ThreadCpuClock
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