Struct network::peer_manager::PeerManagerRequestSender
source · [−]pub struct PeerManagerRequestSender { /* private fields */ }Expand description
Convenience wrapper which makes it easy to issue communication requests and await the responses from PeerManager.
Implementations
sourceimpl PeerManagerRequestSender
impl PeerManagerRequestSender
sourcepub fn new(inner: Sender<(PeerId, ProtocolId), PeerManagerRequest>) -> Self
pub fn new(inner: Sender<(PeerId, ProtocolId), PeerManagerRequest>) -> Self
Construct a new PeerManagerRequestSender with a raw channel::Sender
sourcepub fn send_to(
&self,
peer_id: PeerId,
protocol_id: ProtocolId,
mdata: Bytes
) -> Result<(), PeerManagerError>
pub fn send_to(
&self,
peer_id: PeerId,
protocol_id: ProtocolId,
mdata: Bytes
) -> Result<(), PeerManagerError>
Send a fire-and-forget direct-send message to remote peer.
The function returns when the message has been enqueued on the network actor’s event queue. It therefore makes no reliable delivery guarantees. An error is returned if the event queue is unexpectedly shutdown.
sourcepub fn send_to_many(
&self,
recipients: impl Iterator<Item = PeerId>,
protocol_id: ProtocolId,
mdata: Bytes
) -> Result<(), PeerManagerError>
pub fn send_to_many(
&self,
recipients: impl Iterator<Item = PeerId>,
protocol_id: ProtocolId,
mdata: Bytes
) -> Result<(), PeerManagerError>
Send the same message to many recipients using the direct-send protocol.
This method is an optimization so that we can avoid serializing and
copying the same message many times when we want to sent a single message
to many peers. Note that the Bytes the messages is serialized into is a
ref-counted byte buffer, so we can avoid excess copies as all direct-sends
will share the same underlying byte buffer.
The function returns when all send requests have been enqueued on the network actor’s event queue. It therefore makes no reliable delivery guarantees. An error is returned if the event queue is unexpectedly shutdown.
Trait Implementations
sourceimpl Clone for PeerManagerRequestSender
impl Clone for PeerManagerRequestSender
sourcefn clone(&self) -> PeerManagerRequestSender
fn clone(&self) -> PeerManagerRequestSender
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source. Read more
Auto Trait Implementations
impl RefUnwindSafe for PeerManagerRequestSender
impl Send for PeerManagerRequestSender
impl Sync for PeerManagerRequestSender
impl Unpin for PeerManagerRequestSender
impl UnwindSafe for PeerManagerRequestSender
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<T> Pointable for T
impl<T> Pointable for T
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
toowned_clone_into)Uses borrowed data to replace owned data, usually by cloning. Read more
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