### Method

# GLib Queue insert_sorted

since: 2.4

#### Declaration

    void
    g_queue_insert_sorted (
      GQueue* queue,
      gpointer data,
      GCompareDataFunc func,
      gpointer user_data
    )

#### Description

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

Available since: 2.4

#### Parameters

`data`

  Type: `gpointer`

  The data to insert.

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

`func`

  Type: `GCompareDataFunc`

  The `GCompareDataFunc` used to compare elements in the queue. It is called with two elements of the `queue` and `user_data`. It should return 0 if the elements are equal, a negative value if the first element comes before the second, and a positive value if the second element comes before the first.

`user_data`

  Type: `gpointer`

  User data passed to `func`.

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