函数
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 字符串。