vmcore::vmtime

Struct VmTimeKeeper

Source
pub struct VmTimeKeeper { /* private fields */ }
Expand description

A time keeper, which tracks the current time and all waiters.

Implementations§

Source§

impl VmTimeKeeper

Source

pub fn new(driver: &impl SpawnDriver, uptime: VmTime) -> Self

Creates a new time keeper with the specified current guest time.

Source

pub fn save(&self) -> SavedState

Saves the time state.

Source

pub async fn restore(&mut self, state: SavedState)

Restores the time state.

Source

pub async fn reset(&mut self)

Reset the VM time to 0.

Source

pub async fn start(&mut self)

Starts the timer, so that the current time will increase.

Source

pub async fn stop(&mut self)

Stops the timer, so that the current time will stop increasing.

Source

pub fn builder(&self) -> &VmTimeSourceBuilder

Returns a time source builder, which can be used to spawn tasks that back VmTimeSource instances, all backed by this time keeper’s clock.

Trait Implementations§

Source§

impl Debug for VmTimeKeeper

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl InspectMut for VmTimeKeeper

Source§

fn inspect_mut(&mut self, req: Request<'_>)

Inspects the object.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more