Files
XCEngine/docs/api/XCEngine/Debug/Logger/SetCategoryEnabled.md

44 lines
987 B
Markdown
Raw Normal View History

2026-03-26 16:45:24 +08:00
# Logger::SetCategoryEnabled
2026-03-26 17:21:44 +08:00
打开或关闭某个日志分类。
2026-03-26 16:45:24 +08:00
```cpp
void SetCategoryEnabled(LogCategory category, bool enabled);
```
2026-03-26 17:21:44 +08:00
## 行为说明
2026-03-26 16:45:24 +08:00
2026-03-26 17:21:44 +08:00
当前实现会把 `category` 对应的启用位直接写入内部数组。之后所有 `Log` 调用都会先检查这个开关,再决定是否分发该分类日志。
2026-03-26 16:45:24 +08:00
2026-03-26 17:21:44 +08:00
这是一种非常轻量的 category 过滤方式,但也意味着:
2026-03-26 16:45:24 +08:00
2026-03-26 17:21:44 +08:00
- 当前实现没有加锁。
- 枚举值数量与数组长度耦合。
## 参数
- `category` - 需要开关的日志分类。
- `enabled` - `true` 表示启用,`false` 表示禁用。
## 返回值
- 无。
## 线程语义
- 建议在初始化阶段配置,而不是在多个线程持续写日志时频繁修改。
## 示例
2026-03-26 16:45:24 +08:00
```cpp
2026-03-26 17:21:44 +08:00
using namespace XCEngine::Debug;
2026-03-26 16:45:24 +08:00
2026-03-26 17:21:44 +08:00
Logger::Get().SetCategoryEnabled(LogCategory::Rendering, false);
2026-03-26 16:45:24 +08:00
```
## 相关文档
2026-03-26 17:21:44 +08:00
- [返回类型总览](Logger.md)
- [SetMinimumLevel](SetMinimumLevel.md)
- [LogCategory](../LogCategory/LogCategory.md)