函数
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。该数据归调用该函数的调用方所有。