Struct distant_net::QueuedServerReply
source · [−]pub struct QueuedServerReply<T> { /* private fields */ }
Expand description
Represents a reply where all sends are queued up but not sent until after the flush method is called. This reply supports injecting at the front of the queue in order to support sending messages but ensuring that some specific message is sent out first
Implementations
sourceimpl<T> QueuedServerReply<T>
impl<T> QueuedServerReply<T>
sourcepub async fn hold(&self, hold: bool)
pub async fn hold(&self, hold: bool)
Updates the hold status for the queue
- If true, all messages are held until the queue is flushed
- If false, messages are sent directly as they come in
sourcepub async fn send(&self, data: T) -> Result<()>
pub async fn send(&self, data: T) -> Result<()>
Send this message, adding it to a queue if holding messages
sourcepub fn blocking_send(&self, data: T) -> Result<()>
pub fn blocking_send(&self, data: T) -> Result<()>
Send this message, adding it to a queue if holding messages, blocking for access to locks and other internals
sourcepub async fn send_before(&self, data: T) -> Result<()>
pub async fn send_before(&self, data: T) -> Result<()>
Send this message before anything else in the queue
sourcepub async fn flush(&self, hold: bool) -> Result<()>
pub async fn flush(&self, hold: bool) -> Result<()>
Sends all pending msgs queued up and clears the queue
Additionally, takes hold
to indicate whether or not new msgs
after the flush should continue to be held within the queue
or if all future msgs will be sent immediately
pub fn is_closed(&self) -> bool
Trait Implementations
sourceimpl<T> Clone for QueuedServerReply<T>
impl<T> Clone for QueuedServerReply<T>
sourceimpl<T: Send + 'static> Reply for QueuedServerReply<T>
impl<T: Send + 'static> Reply for QueuedServerReply<T>
type Data = T
sourcefn send(
&self,
data: Self::Data
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + '_>>
fn send(
&self,
data: Self::Data
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + '_>>
Sends a reply out from the server
sourcefn blocking_send(&self, data: Self::Data) -> Result<()>
fn blocking_send(&self, data: Self::Data) -> Result<()>
Blocking version of sending a reply out from the server
sourcefn clone_reply(&self) -> Box<dyn Reply<Data = Self::Data>>
fn clone_reply(&self) -> Box<dyn Reply<Data = Self::Data>>
Clones this reply
Auto Trait Implementations
impl<T> !RefUnwindSafe for QueuedServerReply<T>
impl<T> Send for QueuedServerReply<T> where
T: Send,
impl<T> Sync for QueuedServerReply<T> where
T: Send,
impl<T> Unpin for QueuedServerReply<T>
impl<T> !UnwindSafe for QueuedServerReply<T>
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