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

50 lines
1001 B
Markdown
Raw Normal View History

2026-03-26 16:45:24 +08:00
# Logger::Initialize
2026-03-26 17:21:44 +08:00
`Logger` 标记为已初始化。
2026-03-26 16:45:24 +08:00
```cpp
void Initialize();
```
2026-03-26 17:21:44 +08:00
## 行为说明
2026-03-26 16:45:24 +08:00
2026-03-26 17:21:44 +08:00
当前实现是幂等的:
2026-03-26 16:45:24 +08:00
2026-03-26 17:21:44 +08:00
- 如果已经初始化,直接返回。
- 如果尚未初始化,仅把内部 `m_initialized` 设为 `true`
2026-03-26 16:45:24 +08:00
2026-03-26 17:21:44 +08:00
它不会做以下事情:
- 不会添加默认 sink。
- 不会清空已有 sink。
- 不会重置最小级别或 category 开关。
因此,推荐把它理解为“进入可用状态”的轻量标记,而不是完整的日志系统自举流程。
## 参数
- 无。
## 返回值
- 无。
## 线程语义
- 当前实现没有显式同步初始化流程;如果多线程首次同时写日志,`Log` 的自动初始化路径虽然通常能工作,但仍建议在启动阶段显式调用一次。
## 示例
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().Initialize();
Logger::Get().AddSink(std::make_unique<ConsoleLogSink>());
2026-03-26 16:45:24 +08:00
```
## 相关文档
2026-03-26 17:21:44 +08:00
- [返回类型总览](Logger.md)
- [Shutdown](Shutdown.md)
- [Log](Log.md)