函数
GLibtimeout_add_seconds
自:2.14
声明 [源代码]
guint
g_timeout_add_seconds (
guint interval,
GSourceFunc function,
gpointer data
)
描述 [源代码]
设置一个函数,该函数将使用默认优先级 G_PRIORITY_DEFAULT
定期调用。
该函数将反复调用,直至它返回 G_SOURCE_REMOVE
或 FALSE
,此时超时将自动销毁且不再调用该函数。
此函数通过使用 g_timeout_source_new_seconds()
在内部创建主循环源,并通过 g_source_attach()
将其附加到主循环上下文中。如需更多控制,你可以手动执行这些步骤。另请参阅 g_timeout_add_seconds_full()
。
可安全地从任何线程调用此函数。
请注意,对于一秒的超时,计时器的首次调用可能不准确。如果你需要更高的精度并有此种超时,则可能希望使用 g_timeout_add()
。
有关如何处理返回值及管理 data
的详细信息,请参阅 主循环内存管理。
给出的间隔以单调时间表示,而不是时钟时间。请参阅 g_get_monotonic_time()
。
参数
interval
-
类型:
guint
调用函数的时间间隔(以秒为单位)。
function
-
类型:
GSourceFunc
要调用的函数。
data
-
类型:
gpointer
传递给
function
的数据。该参数可以是 NULL
。该数据归调用该函数的调用方所有。