Sets our main struct and passes it to the parent class.
Creates a new asynchronous queue.
Creates a new asynchronous queue and sets up a destroy notify function that is used to free any remaining queue items when the queue is destroyed after the final unref.
Get the main Gtk struct
the main Gtk struct as a void*
Returns the length of the queue.
Returns the length of the queue.
Acquires the @queue's lock. If another thread is already holding the lock, this call will block until the lock becomes available.
Pops data from the @queue. If @queue is empty, this function blocks until data becomes available.
Pops data from the @queue. If @queue is empty, this function blocks until data becomes available.
Pushes the @data into the @queue. @data must not be %NULL.
Pushes the @item into the @queue. @item must not be %NULL. In contrast to g_async_queue_push(), this function pushes the new item ahead of the items already in the queue, so that it will be the next one to be popped off the queue.
Pushes the @item into the @queue. @item must not be %NULL. In contrast to g_async_queue_push_unlocked(), this function pushes the new item ahead of the items already in the queue, so that it will be the next one to be popped off the queue.
Inserts @data into @queue using @func to determine the new position.
Inserts @data into @queue using @func to determine the new position.
Pushes the @data into the @queue. @data must not be %NULL.
Increases the reference count of the asynchronous @queue by 1.
Increases the reference count of the asynchronous @queue by 1. You do not need to hold the lock to call this function.
Remove an item from the queue.
Remove an item from the queue.
Sorts @queue using @func.
Sorts @queue using @func.
Pops data from the @queue. If the queue is empty, blocks until @end_time or until data becomes available.
Pops data from the @queue. If the queue is empty, blocks until @end_time or until data becomes available.
Pops data from the @queue. If the queue is empty, blocks for @timeout microseconds, or until data becomes available.
Pops data from the @queue. If the queue is empty, blocks for @timeout microseconds, or until data becomes available.
Tries to pop data from the @queue. If no data is available, %NULL is returned.
Tries to pop data from the @queue. If no data is available, %NULL is returned.
Releases the queue's lock.
Decreases the reference count of the asynchronous @queue by 1.
Decreases the reference count of the asynchronous @queue by 1 and releases the lock. This function must be called while holding the @queue's lock. If the reference count went to 0, the @queue will be destroyed and the memory allocated will be freed.
the main Gtk struct
The GAsyncQueue struct is an opaque data structure which represents an asynchronous queue. It should only be accessed through the g_async_queue_* functions.