Method

GLibAsyncQueuesort

since: 2.10

Declaration

void
g_async_queue_sort (
  GAsyncQueue* queue,
  GCompareDataFunc func,
  gpointer user_data
)

Description

Sorts queue using func.

The sort function func is passed two elements of the queue. It should return 0 if they are equal, a negative value if the first element should be higher in the queue or a positive value if the first element should be lower in the queue than the second element.

This function will lock queue before it sorts the queue and unlock it when it is finished.

If you were sorting a list of priority numbers to make sure the lowest priority would be at the top of the queue, you could use:

 gint32 id1;
 gint32 id2;

 id1 = GPOINTER_TO_INT (element1);
 id2 = GPOINTER_TO_INT (element2);

 return (id1 > id2 ? +1 : id1 == id2 ? 0 : -1);

Available since: 2.10

Parameters

func

Type: GCompareDataFunc

The GCompareDataFunc is used to sort queue.

user_data

Type: gpointer

User data passed to func.

The argument can be NULL.
The data is owned by the caller of the function.