Struct AsyncCtx

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

A type that can affect the logical event queue to implement asynchronous physical actions. This is a “link” to the event system, from the outside world.

See ReactionCtx::spawn_physical_thread.

Implementations§

Source§

impl AsyncCtx

Source

pub fn was_terminated(&self) -> bool

Returns true if the scheduler has been shutdown. When that’s true, calls to other methods of this type will fail with [SendError].

Source

pub fn request_stop(&mut self, offset: Offset) -> Result<(), SendError<()>>

Request that the application shutdown, possibly with a particular offset from the current physical time.

This may fail if this is called while the scheduler has already been shutdown. An Ok result is also not a guarantee that the event will be processed: the scheduler may be in the process of shutting down, or its shutdown might be programmed for a logical time which precedes the current physical time.

Source

pub fn schedule_physical<T: Sync>( &mut self, action: &PhysicalActionRef<T>, offset: Offset, ) -> Result<(), SendError<Option<T>>>

Schedule an action to run after its own implicit time delay plus an optional additional time delay. These delays are in logical time.

Note that this locks the action.

This may fail if this is called while the scheduler has already been shutdown. An Ok result is also not a guarantee that the event will be processed: the scheduler may be in the process of shutting down, or its shutdown might be programmed for a logical time which precedes the current physical time.

Source

pub fn schedule_physical_with_v<T: Sync>( &mut self, action: &PhysicalActionRef<T>, value: Option<T>, offset: Offset, ) -> Result<(), SendError<Option<T>>>

Schedule an action to run after its own implicit time delay plus an optional additional time delay. These delays are in logical time.

Note that this locks the action.

This may fail if this is called while the scheduler has already been shutdown. An Ok result is also not a guarantee that the event will be processed: the scheduler may be in the process of shutting down, or its shutdown might be programmed for a logical time which precedes the current physical time.

Trait Implementations§

Source§

impl Clone for AsyncCtx

Source§

fn clone(&self) -> AsyncCtx

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

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> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
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.