pub struct MessageQueue { /* private fields */ }Implementations§
Source§impl MessageQueue
impl MessageQueue
pub fn new(max_messages: usize, max_size: usize) -> Self
Sourcepub fn enqueue(&mut self, message: ExpiringMessage) -> Result<QueueResult>
pub fn enqueue(&mut self, message: ExpiringMessage) -> Result<QueueResult>
§Errors
Returns MessageTooLarge if the message exceeds the maximum queue size.
pub fn dequeue(&mut self) -> Option<ExpiringMessage>
pub fn dequeue_batch(&mut self, limit: usize) -> Vec<ExpiringMessage>
pub fn len(&self) -> usize
pub fn is_empty(&self) -> bool
pub fn size(&self) -> usize
pub fn clear(&mut self)
pub fn remove_expired(&mut self, queue_timeout: Duration)
pub fn stats(&self) -> QueueStats
Trait Implementations§
Auto Trait Implementations§
impl Freeze for MessageQueue
impl RefUnwindSafe for MessageQueue
impl Send for MessageQueue
impl Sync for MessageQueue
impl Unpin for MessageQueue
impl UnwindSafe for MessageQueue
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