2026-03-26 16:45:24 +08:00
|
|
|
|
# Logger::Get
|
|
|
|
|
|
|
2026-03-26 17:21:44 +08:00
|
|
|
|
获取进程级全局 `Logger` 实例。
|
2026-03-26 16:45:24 +08:00
|
|
|
|
|
|
|
|
|
|
```cpp
|
|
|
|
|
|
static Logger& Get();
|
|
|
|
|
|
```
|
|
|
|
|
|
|
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
|
|
|
|
```cpp
|
|
|
|
|
|
static Logger instance;
|
|
|
|
|
|
```
|
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
|
|
|
|
- 你拿到的是同一个 `Logger` 实例引用。
|
|
|
|
|
|
- 该方法本身不会自动初始化 sink,也不会重置过滤配置。
|
|
|
|
|
|
|
|
|
|
|
|
## 参数
|
|
|
|
|
|
|
|
|
|
|
|
- 无。
|
|
|
|
|
|
|
|
|
|
|
|
## 返回值
|
2026-03-26 16:45:24 +08:00
|
|
|
|
|
2026-03-26 17:21:44 +08:00
|
|
|
|
- `Logger&` - 全局日志分发器引用。
|
|
|
|
|
|
|
|
|
|
|
|
## 线程语义
|
|
|
|
|
|
|
|
|
|
|
|
- C++ 对函数内静态对象初始化提供线程安全保证,但 `Logger` 的后续配置和使用仍需遵守各自方法的线程语义。
|
|
|
|
|
|
|
|
|
|
|
|
## 示例
|
|
|
|
|
|
|
|
|
|
|
|
```cpp
|
|
|
|
|
|
XCEngine::Debug::Logger& logger = XCEngine::Debug::Logger::Get();
|
|
|
|
|
|
logger.Initialize();
|
2026-03-26 16:45:24 +08:00
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
## 相关文档
|
|
|
|
|
|
|
2026-03-26 17:21:44 +08:00
|
|
|
|
- [返回类型总览](Logger.md)
|
|
|
|
|
|
- [Initialize](Initialize.md)
|