pub struct MediaPriorityQueue { /* private fields */ }Expand description
Priority queue for media chunks Uses your existing Queue internally but adds priority ordering
Implementations§
Source§impl MediaPriorityQueue
impl MediaPriorityQueue
pub fn new(capacity: usize, priority_buffer_size: usize) -> Self
pub async fn enqueue(&self, chunk: MediaChunk) -> Result<(), QueueError>
pub fn dequeue(&self) -> impl Stream<Item = MediaChunk> + Send + 'static
Sourcepub async fn try_enqueue(&self, chunk: MediaChunk) -> Result<(), QueueError>
pub async fn try_enqueue(&self, chunk: MediaChunk) -> Result<(), QueueError>
Try to enqueue without blocking - useful for live streaming
pub async fn close(&self)
pub async fn len(&self) -> usize
Auto Trait Implementations§
impl Freeze for MediaPriorityQueue
impl !RefUnwindSafe for MediaPriorityQueue
impl Send for MediaPriorityQueue
impl Sync for MediaPriorityQueue
impl Unpin for MediaPriorityQueue
impl !UnwindSafe for MediaPriorityQueue
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