Function

GLibidle_add

Declaration

guint
g_idle_add (
  GSourceFunc function,
  gpointer data
)

Description

Adds a function to be called whenever there are no higher priority events pending to the default main loop. The function is given the default idle priority, G_PRIORITY_DEFAULT_IDLE. If the function returns FALSE it is automatically removed from the list of event sources and will not be called again.

See [memory management of sources][mainloop-memory-management] for details on how to handle the return value and memory management of data.

This internally creates a main loop source using g_idle_source_new() and attaches it to the global GMainContext using g_source_attach(), so the callback will be invoked in whichever thread is running that main context. You can do these steps manually if you need greater control or to use a custom main context.

This function is not directly available to language bindings
The implementation of this function is provided by g_idle_add_full() in language bindings

Parameters

function GSourceFunc
 

Function to call.

data gpointer
 

Data to pass to function.

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

Return value

Returns: guint
 

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