功能
GObjectsignal_handlers_disconnect_matched
声明 [src]
guint
g_signal_handlers_disconnect_matched (
GObject* instance,
GSignalMatchType mask,
guint signal_id,
GQuark detail,
GClosure* closure,
gpointer func,
gpointer data
)
说明 [src]
断开与实例上匹配某一特定选择标准的所有处理程序。
条件掩码以 GSignalMatchType 标志的组合方式传递,条件值以自变量的方式传递。处理程序必须与 mask 中设置的所有标志匹配(即匹配为合取)。
必须传递至少一个 G_SIGNAL_MATCH_ID、G_SIGNAL_MATCH_CLOSURE、G_SIGNAL_MATCH_FUNC 或 G_SIGNAL_MATCH_DATA 匹配标志以实现匹配。如果没有找到处理程序,则返回 0,否则返回断开连接的处理程序数。
对于 G_SIGNAL_MATCH_ID 的支持已在 GLib 2.78 中添加。
参数
instance-
类型:
GObject要从中删除处理程序的实例。
数据归调用该函数的调用方所有。 mask-
类型:
GSignalMatchType掩码指示处理程序必须匹配哪些
signal_id、detail、closure、func和/或data。 signal_id-
类型:
guint处理程序必须连接到的信号。
detail-
类型:
GQuark处理程序必须连接到的信号详情。
closure-
类型:
GClosure处理程序将调用的闭包。
自变量可以为 NULL。数据归调用该函数的调用方所有。 func-
类型:
gpointer处理程序的 C 闭包回调(对非 C 闭包无用)。
自变量可以为 NULL。数据归调用该函数的调用方所有。 data-
类型:
gpointer处理程序闭包的闭包数据。
自变量可以为 NULL。数据归调用该函数的调用方所有。