函数
GLibidle_add_full
声明 [src]
guint
g_idle_add_full (
gint priority,
GSourceFunc function,
gpointer data,
GDestroyNotify notify
)
说明 [src]
在没有任何更高优先级事件待处理时,添加一个要调用的函数。
如果函数返回 G_SOURCE_REMOVE
或 FALSE
,则该函数会自动从事件源列表中移除,并且不会再次调用它。
有关如何处理 data
的返回值和内存管理的详细信息,请参阅 主循环内存管理。
此函数在内部使用 g_idle_source_new()
创建主循环源,并使用 g_source_attach()
将其附加到全局 GMainContext
,因此回调将被调用运行该主上下文的任何线程中。如果您需要更大的控制权或要使用自定义主上下文,您可以手动执行这些步骤。
此函数在语言绑定中被重命名为 g_idle_add()
。
参数
priority
-
类型:
gint
空闲资源的优先级。通常介于
G_PRIORITY_DEFAULT_IDLE
和G_PRIORITY_HIGH_IDLE
之间。 function
-
类型:
GSourceFunc
要调用的函数。
data
-
类型:
gpointer
要传递给
function
的数据。参数可以为 NULL
。此数据归函数的调用者所有。 notify
-
类型:
GDestroyNotify
空闲被移除时要调用的函数,或
NULL
。参数可以为 NULL
。