函数

GLibSourceremove

声明 [src]

gboolean
g_source_remove (
  guint tag
)

描述 [src]

从默认主上下文中移除具有给定 ID 的源。对于添加到非默认主上下文的源,必须使用 g_source_destroy()

GSource 的 ID 由 g_source_get_id() 提供,或者由函数 g_source_attach()g_idle_add()g_idle_add_full()g_timeout_add()g_timeout_add_full()g_child_watch_add()g_child_watch_add_full()g_io_add_watch()g_io_add_watch_full() 返回。

尝试移除不存在的源是编程错误。

更具体地说:源 ID 在源被销毁后可以重新分配,因此使用可能已经删除的源 ID 调用此函数永远是不正确的。一个例子是在使用 g_idle_add() 在另一个线程中安排空闲运行时:空闲可能在调用此函数其(现在无效)源 ID 时已经运行并被删除。此源 ID 可能已被重新分配,导致针对错误的源执行操作。

参数

tag

类型: guint

要移除的源的 ID。

返回值

类型: gboolean

TRUE 如果找到了源并已移除。