Struct distant_net::Channel
source · [−]Expand description
Represents a sender of requests tied to a session, holding onto a weak reference of
mailboxes to relay responses, meaning that once the [Session
] is closed or dropped,
any sent request will no longer be able to receive responses
Implementations
sourceimpl<T, U> Channel<T, U> where
T: Send + Sync,
U: Send + Sync + 'static,
impl<T, U> Channel<T, U> where
T: Send + Sync,
U: Send + Sync + 'static,
sourcepub async fn mail(
&mut self,
req: impl Into<Request<T>>
) -> Result<Mailbox<Response<U>>>
pub async fn mail(
&mut self,
req: impl Into<Request<T>>
) -> Result<Mailbox<Response<U>>>
Sends a request and returns a mailbox that can receive one or more responses, failing if unable to send a request or if the session’s receiving line to the remote server has already been severed
sourcepub async fn mail_timeout(
&mut self,
req: impl Into<Request<T>>,
duration: impl Into<Option<Duration>>
) -> Result<Mailbox<Response<U>>>
pub async fn mail_timeout(
&mut self,
req: impl Into<Request<T>>,
duration: impl Into<Option<Duration>>
) -> Result<Mailbox<Response<U>>>
Sends a request and returns a mailbox, timing out after duration has passed
sourcepub async fn send(&mut self, req: impl Into<Request<T>>) -> Result<Response<U>>
pub async fn send(&mut self, req: impl Into<Request<T>>) -> Result<Response<U>>
Sends a request and waits for a response, failing if unable to send a request or if the session’s receiving line to the remote server has already been severed
sourcepub async fn send_timeout(
&mut self,
req: impl Into<Request<T>>,
duration: impl Into<Option<Duration>>
) -> Result<Response<U>>
pub async fn send_timeout(
&mut self,
req: impl Into<Request<T>>,
duration: impl Into<Option<Duration>>
) -> Result<Response<U>>
Sends a request and waits for a response, timing out after duration has passed
Trait Implementations
Auto Trait Implementations
impl<T, U> !RefUnwindSafe for Channel<T, U>
impl<T, U> Send for Channel<T, U>
impl<T, U> Sync for Channel<T, U>
impl<T, U> Unpin for Channel<T, U>
impl<T, U> !UnwindSafe for Channel<T, U>
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
fn vzip(self) -> V
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
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
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more