:right-sidebar: True AtomicQueue =================================================================== .. currentmodule:: gi.repository.Gst .. class:: AtomicQueue(**kwargs) :no-contents-entry: The :obj:`~gi.repository.Gst.AtomicQueue` object implements a queue that can be used from multiple threads without performing any blocking operations. Constructors ------------ .. rst-class:: interim-class .. class:: AtomicQueue :no-index: .. classmethod:: new(initial_size: int) -> ~gi.repository.Gst.AtomicQueue Create a new atomic queue instance. ``initial_size`` will be rounded up to the nearest power of 2 and used as the initial size of the queue. :param initial_size: initial queue size Methods ------- .. rst-class:: interim-class .. class:: AtomicQueue :no-index: .. method:: length() -> int Get the amount of items in the queue. .. method:: peek() -> ~typing.Any | None Peek the head element of the queue without removing it from the queue. .. method:: pop() -> ~typing.Any | None Get the head element of the queue. .. method:: push(data: ~typing.Any = None) -> None Append ``data`` to the tail of the queue. :param data: the data