### Function

# Clutter threads_add_timeout_full

#### Declaration [src]

    guint
    clutter_threads_add_timeout_full (
      gint priority,
      guint interval,
      GSourceFunc func,
      gpointer data,
      GDestroyNotify notify
    )

#### Description [src]

Sets a function to be called at regular intervals holding the Clutter threads lock, with the given priority. The function is called repeatedly until it returns `FALSE`, at which point the timeout is automatically removed and the function will not be called again. The `notify` function is called when the timeout is removed.

The first call to the function will be at the end of the first `interval`.

It is important to note that, due to how the Clutter main loop is implemented, the timing will not be accurate and it will not try to “keep up” with the interval.

See also clutter_threads_add_idle_full().

This function is renamed to `clutter_threads_add_timeout()` in language bindings.

#### Parameters

`priority`

  Type: `gint`

  The priority of the timeout source. Typically this will be in the range between #G_PRIORITY_DEFAULT and #G_PRIORITY_HIGH.

`interval`

  Type: `guint`

  The time between calls to the function, in milliseconds.

`func`

  Type: `GSourceFunc`

  Function to call.

`data`

  Type: `gpointer`

  Data to pass to the function.

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

`notify`

  Type: `GDestroyNotify`

  Function to call when the timeout source is removed.

#### Return value

Type: `guint`

The ID (greater than 0) of the event source.