Struct calloop::channel::SyncSender[][src]

pub struct SyncSender<T> { /* fields omitted */ }

The sender end of a synchronous channel

It can be cloned and sent accross threads (if T is).

Implementations

impl<T> SyncSender<T>[src]

pub fn send(&self, t: T) -> Result<(), SendError<T>>[src]

Send a message to the synchronous channel

This will wake the event loop and deliver an Event::Msg to it containing the provided value. If the channel is full, this function will block until the event loop empties it and it can deliver the message.

Due to the blocking behavior, this method should not be used on the same thread as the one running the event loop, as it could cause deadlocks.

pub fn try_send(&self, t: T) -> Result<(), TrySendError<T>>[src]

Send a message to the synchronous channel

This will wake the event loop and deliver an Event::Msg to it containing the provided value. If the channel is full, this function will return an error, but the event loop will still be signaled for readiness.

Trait Implementations

impl<T> Clone for SyncSender<T>[src]

Auto Trait Implementations

impl<T> RefUnwindSafe for SyncSender<T>

impl<T> Send for SyncSender<T> where
    T: Send

impl<T> Sync for SyncSender<T> where
    T: Send

impl<T> Unpin for SyncSender<T>

impl<T> UnwindSafe for SyncSender<T>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.