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
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
This internally creates a main loop source using
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 method is provided by
g_idle_add_full() in language bindings
Function to call.
Data to pass to
The argument can be
The data is owned by the caller of the function.