| Top |  |  |  |  | 
| GstAtomicQueue * | gst_atomic_queue_new () | 
| void | gst_atomic_queue_ref () | 
| void | gst_atomic_queue_unref () | 
| void | gst_atomic_queue_push () | 
| gpointer | gst_atomic_queue_peek () | 
| gpointer | gst_atomic_queue_pop () | 
| guint | gst_atomic_queue_length () | 
The GstAtomicQueue object implements a queue that can be used from multiple threads without performing any blocking operations.
GstAtomicQueue *
gst_atomic_queue_new (guint initial_size);
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.
void
gst_atomic_queue_ref (GstAtomicQueue *queue);
Increase the refcount of queue
.
void
gst_atomic_queue_unref (GstAtomicQueue *queue);
Unref queue
 and free the memory when the refcount reaches 0.
void gst_atomic_queue_push (GstAtomicQueue *queue,gpointer data);
Append data
 to the tail of the queue.
gpointer
gst_atomic_queue_peek (GstAtomicQueue *queue);
Peek the head element of the queue without removing it from the queue.
gpointer
gst_atomic_queue_pop (GstAtomicQueue *queue);
Get the head element of the queue.
guint
gst_atomic_queue_length (GstAtomicQueue *queue);
Get the amount of items in the queue.