Struct RemoteEndpoint

Source
pub struct RemoteEndpoint<S> { /* private fields */ }
Expand description

Enables interactions with an EventManager that runs on a different thread of execution.

Implementations§

Source§

impl<S> RemoteEndpoint<S>

Source

pub fn call_blocking<F, O, E>(&self, f: F) -> Result<O, E>
where F: FnOnce(&mut dyn SubscriberOps<Subscriber = S>) -> Result<O, E> + Send + 'static, O: Send + 'static, E: From<Error> + Send + 'static,

Call the specified closure on the associated remote EventManager (provided as a SubscriberOps trait object), and return the result. This method blocks until the result is received, and calling it from the same thread where the event loop runs leads to a deadlock.

Source

pub fn fire<F>(&self, f: F) -> Result<(), Error>
where F: FnOnce(&mut dyn SubscriberOps<Subscriber = S>) + Send + 'static,

Call the specified closure on the associated local/remote EventManager (provided as a SubscriberOps trait object), and discard the result. This method only fires the request but does not wait for result, so it may be called from the same thread where the event loop runs.

Source

pub fn kick(&self) -> Result<(), Error>

Kick the worker thread to wake up from the epoll event loop.

Trait Implementations§

Source§

impl<S> Clone for RemoteEndpoint<S>

Source§

fn clone(&self) -> RemoteEndpoint<S>

Returns a duplicate 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§

§

impl<S> Freeze for RemoteEndpoint<S>

§

impl<S> RefUnwindSafe for RemoteEndpoint<S>

§

impl<S> Send for RemoteEndpoint<S>

§

impl<S> Sync for RemoteEndpoint<S>

§

impl<S> Unpin for RemoteEndpoint<S>

§

impl<S> UnwindSafe for RemoteEndpoint<S>

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.