### Method

# GLib AsyncQueue push_sorted

since: 2.10

#### Declaration [src]

    void
    g_async_queue_push_sorted (
      GAsyncQueue* queue,
      gpointer data,
      GCompareDataFunc func,
      gpointer user_data
    )

#### Description [src]

Inserts `data` into `queue` using `func` to determine the new position.

This function requires that the `queue` is sorted before pushing on new elements, see g_async_queue_sort().

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

For an example of `func` see g_async_queue_sort().

Available since: 2.10

#### Parameters

`data`

  Type: `gpointer`

  The `data` to push into the `queue`.

  The data is owned by the caller of the method.

`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 method.