pub struct IAmBroadcaster<T: TransportPort> { /* private fields */ }Expand description
Cloneable handle for unsolicited I-Am announcements while its server runs.
At most 32 local broadcasts may be in flight. Admission fails immediately at capacity or after shutdown begins. Admitted sends belong to the server: cancelling their caller only drops its waiter; stop cancels and joins them. Retaining this handle does not retain the transport after shutdown.
Implementations§
Source§impl<T: TransportPort + 'static> IAmBroadcaster<T>
impl<T: TransportPort + 'static> IAmBroadcaster<T>
Sourcepub async fn broadcast_i_am(&self) -> Result<(), Error>
pub async fn broadcast_i_am(&self) -> Result<(), Error>
Send through the running server; overload or shutdown returns an error,
and so does DeviceCommunicationControl restricting initiation (see
BACnetServer::broadcast_i_am). Cancelling this waiter does not
cancel an already admitted send.
Trait Implementations§
Source§impl<T: TransportPort> Clone for IAmBroadcaster<T>
impl<T: TransportPort> Clone for IAmBroadcaster<T>
Auto Trait Implementations§
impl<T> !RefUnwindSafe for IAmBroadcaster<T>
impl<T> !UnwindSafe for IAmBroadcaster<T>
impl<T> Freeze for IAmBroadcaster<T>
impl<T> Send for IAmBroadcaster<T>
impl<T> Sync for IAmBroadcaster<T>
impl<T> Unpin for IAmBroadcaster<T>
impl<T> UnsafeUnpin for IAmBroadcaster<T>where
Weak<BroadcasterState<T>>: UnsafeUnpin,
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more