pub struct Publisher<'a, M: RawMutex, T: Clone, const CAP: usize, const SUBS: usize, const PUBS: usize>(/* private fields */);
Expand description
A publisher that holds a generic reference to the channel
Methods from Deref<Target = Pub<'a, PubSubChannel<M, T, CAP, SUBS, PUBS>, T>>§
Sourcepub fn publish_immediate(&self, message: T)
pub fn publish_immediate(&self, message: T)
Publish a message right now even when the queue is full. This may cause a subscriber to miss an older message.
Sourcepub fn publish<'s>(&'s self, message: T) -> PublisherWaitFuture<'s, 'a, PSB, T> ⓘ
pub fn publish<'s>(&'s self, message: T) -> PublisherWaitFuture<'s, 'a, PSB, T> ⓘ
Publish a message. But if the message queue is full, wait for all subscribers to have read the last 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()
Trait Implementations§
Auto Trait Implementations§
impl<'a, M, T, const CAP: usize, const SUBS: usize, const PUBS: usize> Freeze for Publisher<'a, M, T, CAP, SUBS, PUBS>
impl<'a, M, T, const CAP: usize, const SUBS: usize, const PUBS: usize> !RefUnwindSafe for Publisher<'a, M, T, CAP, SUBS, PUBS>
impl<'a, M, T, const CAP: usize, const SUBS: usize, const PUBS: usize> Send for Publisher<'a, M, T, CAP, SUBS, PUBS>
impl<'a, M, T, const CAP: usize, const SUBS: usize, const PUBS: usize> Sync for Publisher<'a, M, T, CAP, SUBS, PUBS>
impl<'a, M, T, const CAP: usize, const SUBS: usize, const PUBS: usize> Unpin for Publisher<'a, M, T, CAP, SUBS, PUBS>where
T: Unpin,
impl<'a, M, T, const CAP: usize, const SUBS: usize, const PUBS: usize> !UnwindSafe for Publisher<'a, M, T, CAP, SUBS, PUBS>
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