pub struct ImmediatePub<'a, PSB: PubSubBehavior<T> + ?Sized, T: Clone> { /* private fields */ }
Expand description
A publisher that can only use the publish_immediate
function, but it doesn’t have to be registered with the channel.
(So an infinite amount is possible)
Implementations§
Source§impl<'a, PSB: PubSubBehavior<T> + ?Sized, T: Clone> ImmediatePub<'a, PSB, T>
impl<'a, PSB: PubSubBehavior<T> + ?Sized, T: Clone> ImmediatePub<'a, PSB, T>
Sourcepub fn publish_immediate(&self, message: T)
pub fn publish_immediate(&self, message: T)
Publish the message right now even when the queue is full. This may cause a subscriber to miss an older message.
Sourcepub fn try_publish(&self, message: T) -> Result<(), T>
pub fn try_publish(&self, message: T) -> Result<(), T>
Publish a message if there is space in the message queue
Sourcepub fn free_capacity(&self) -> usize
pub fn free_capacity(&self) -> usize
Returns the free capacity of the channel.
This is equivalent to capacity() - len()
Auto Trait Implementations§
impl<'a, PSB, T> Freeze for ImmediatePub<'a, PSB, T>where
PSB: ?Sized,
impl<'a, PSB, T> RefUnwindSafe for ImmediatePub<'a, PSB, T>
impl<'a, PSB, T> Send for ImmediatePub<'a, PSB, T>
impl<'a, PSB, T> Sync for ImmediatePub<'a, PSB, T>
impl<'a, PSB, T> Unpin for ImmediatePub<'a, PSB, T>
impl<'a, PSB, T> UnwindSafe for ImmediatePub<'a, PSB, T>
Blanket Implementations§
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