# GstAtomicQueue

The GstAtomicQueue object implements a queue that can be used from multiple threads without performing any blocking operations.

## GstAtomicQueue

Opaque atomic data queue.

Use the accessor functions to get the stored values.

## Gst.AtomicQueue

Opaque atomic data queue.

Use the accessor functions to get the stored values.

## Gst.AtomicQueue

Opaque atomic data queue.

Use the accessor functions to get the stored values.

### Constructors

#### gst_atomic_queue_new

    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.

Parameters:

`initial_size` –

initial queue size

Returns –

a new GstAtomicQueue

#### Gst.AtomicQueue.prototype.new

    function Gst.AtomicQueue.prototype.new(initial_size: Number): {
        // javascript wrapper for 'gst_atomic_queue_new'
    }

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.

Parameters:

`initial_size` (Number) –

initial queue size

Returns (Gst.AtomicQueue) –

a new Gst.AtomicQueue

#### Gst.AtomicQueue.new

    def Gst.AtomicQueue.new (initial_size):
        #python wrapper for 'gst_atomic_queue_new'

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.

Parameters:

`initial_size` (int) –

initial queue size

Returns (Gst.AtomicQueue) –

a new Gst.AtomicQueue

### Methods

#### gst_atomic_queue_length

    guint
    gst_atomic_queue_length (GstAtomicQueue * queue)

Get the amount of items in the queue.

Parameters:

`queue` –

a GstAtomicQueue

Returns –

the number of elements in the queue.

#### Gst.AtomicQueue.prototype.length

    function Gst.AtomicQueue.prototype.length(): {
        // javascript wrapper for 'gst_atomic_queue_length'
    }

Get the amount of items in the queue.

Parameters:

`queue` (Gst.AtomicQueue) –

a Gst.AtomicQueue

Returns (Number) –

the number of elements in the queue.

#### Gst.AtomicQueue.length

    def Gst.AtomicQueue.length (self):
        #python wrapper for 'gst_atomic_queue_length'

Get the amount of items in the queue.

Parameters:

`queue` (Gst.AtomicQueue) –

a Gst.AtomicQueue

Returns (int) –

the number of elements in the queue.

#### gst_atomic_queue_peek

    gpointer
    gst_atomic_queue_peek (GstAtomicQueue * queue)

Peek the head element of the queue without removing it from the queue.

Parameters:

`queue` –

a GstAtomicQueue

Returns ( [transfer: none][nullable]) –

the head element of queue or NULL when the queue is empty.

#### Gst.AtomicQueue.prototype.peek

    function Gst.AtomicQueue.prototype.peek(): {
        // javascript wrapper for 'gst_atomic_queue_peek'
    }

Peek the head element of the queue without removing it from the queue.

Parameters:

`queue` (Gst.AtomicQueue) –

a Gst.AtomicQueue

Returns (Object) –

the head element of queue or null when the queue is empty.

#### Gst.AtomicQueue.peek

    def Gst.AtomicQueue.peek (self):
        #python wrapper for 'gst_atomic_queue_peek'

Peek the head element of the queue without removing it from the queue.

Parameters:

`queue` (Gst.AtomicQueue) –

a Gst.AtomicQueue

Returns (object) –

the head element of queue or None when the queue is empty.

#### gst_atomic_queue_pop

    gpointer
    gst_atomic_queue_pop (GstAtomicQueue * queue)

Get the head element of the queue.

Parameters:

`queue` –

a GstAtomicQueue

Returns ( [transfer: full]) –

the head element of queue or NULL when the queue is empty.

#### Gst.AtomicQueue.prototype.pop

    function Gst.AtomicQueue.prototype.pop(): {
        // javascript wrapper for 'gst_atomic_queue_pop'
    }

Get the head element of the queue.

Parameters:

`queue` (Gst.AtomicQueue) –

a Gst.AtomicQueue

Returns (Object) –

the head element of queue or null when the queue is empty.

#### Gst.AtomicQueue.pop

    def Gst.AtomicQueue.pop (self):
        #python wrapper for 'gst_atomic_queue_pop'

Get the head element of the queue.

Parameters:

`queue` (Gst.AtomicQueue) –

a Gst.AtomicQueue

Returns (object) –

the head element of queue or None when the queue is empty.

#### gst_atomic_queue_push

    gst_atomic_queue_push (GstAtomicQueue * queue,
                           gpointer data)

Append data to the tail of the queue.

Parameters:

`queue` –

a GstAtomicQueue

`data` –

the data

#### Gst.AtomicQueue.prototype.push

    function Gst.AtomicQueue.prototype.push(data: Object): {
        // javascript wrapper for 'gst_atomic_queue_push'
    }

Append data to the tail of the queue.

Parameters:

`queue` (Gst.AtomicQueue) –

a Gst.AtomicQueue

`data` (Object) –

the data

#### Gst.AtomicQueue.push

    def Gst.AtomicQueue.push (self, data):
        #python wrapper for 'gst_atomic_queue_push'

Append data to the tail of the queue.

Parameters:

`queue` (Gst.AtomicQueue) –

a Gst.AtomicQueue

`data` (object) –

the data

#### gst_atomic_queue_ref

    gst_atomic_queue_ref (GstAtomicQueue * queue)

Increase the refcount of queue.

Parameters:

`queue` –

a GstAtomicQueue

#### Gst.AtomicQueue.prototype.ref

    function Gst.AtomicQueue.prototype.ref(): {
        // javascript wrapper for 'gst_atomic_queue_ref'
    }

Increase the refcount of queue.

Parameters:

`queue` (Gst.AtomicQueue) –

a Gst.AtomicQueue

#### Gst.AtomicQueue.ref

    def Gst.AtomicQueue.ref (self):
        #python wrapper for 'gst_atomic_queue_ref'

Increase the refcount of queue.

Parameters:

`queue` (Gst.AtomicQueue) –

a Gst.AtomicQueue

#### gst_atomic_queue_unref

    gst_atomic_queue_unref (GstAtomicQueue * queue)

Unref queue and free the memory when the refcount reaches 0.

Parameters:

`queue` –

a GstAtomicQueue

#### Gst.AtomicQueue.prototype.unref

    function Gst.AtomicQueue.prototype.unref(): {
        // javascript wrapper for 'gst_atomic_queue_unref'
    }

Unref queue and free the memory when the refcount reaches 0.

Parameters:

`queue` (Gst.AtomicQueue) –

a Gst.AtomicQueue

#### Gst.AtomicQueue.unref

    def Gst.AtomicQueue.unref (self):
        #python wrapper for 'gst_atomic_queue_unref'

Unref queue and free the memory when the refcount reaches 0.

Parameters:

`queue` (Gst.AtomicQueue) –

a Gst.AtomicQueue

## Constants

### GST_TYPE_ATOMIC_QUEUE

    #define GST_TYPE_ATOMIC_QUEUE (gst_atomic_queue_get_type())

The results of the search are