函数
GLiblog_writer_default_would_drop
since: 2.68
声明 [src]
gboolean
g_log_writer_default_would_drop (
GLogLevelFlags log_level,
const char* log_domain
)
描述 [src]
检查 g_log_writer_default()
和 g_log_default_handler()
是否会忽略具有指定域和级别的消息。
与 g_log_default_handler()
一样,此函数会忽略调试和消息消息,除非它们的日志域(或 all
)列在以空格分隔的 G_MESSAGES_DEBUG
环境变量中,或在环境中设置 DEBUG_INVOCATION=1
,或通过 g_log_writer_default_set_debug_domains()
设置。
当使用具有与默认值相同过滤行为的日志编写器(但具有不同的目标或输出格式)进行实现时,可以使用此功能
if (g_log_writer_default_would_drop (log_level, log_domain))
return G_LOG_WRITER_HANDLED;
]|
or to skip an expensive computation if it is only needed for a debugging
message, and `G_MESSAGES_DEBUG` and `DEBUG_INVOCATION` are not set:
```c
if (!g_log_writer_default_would_drop (G_LOG_LEVEL_DEBUG, G_LOG_DOMAIN))
{
g_autofree gchar *result = expensive_computation (my_object);
g_debug ("my_object result: %s", result);
}
自版本 2.68 起可用
参数
log_level
-
类型:
GLogLevelFlags
日志级别,来自
GLogLevelFlags
或自定义级别。 log_domain
-
类型:
const char*
日志域。
参数可以为 NULL
。数据归函数的调用者所有。 值是一个以 NUL 结尾的 UTF-8 字符串。