25 lines
638 B
Markdown
25 lines
638 B
Markdown
|
|
# FileLogSink::Flush
|
||
|
|
|
||
|
|
```cpp
|
||
|
|
void Flush() override
|
||
|
|
```
|
||
|
|
|
||
|
|
刷新文件缓冲区,调用底层 `FileWriter` 的 flush 方法确保所有待写入的日志数据已实际写入磁盘。
|
||
|
|
|
||
|
|
**复杂度:** O(1)
|
||
|
|
|
||
|
|
**示例:**
|
||
|
|
|
||
|
|
```cpp
|
||
|
|
auto fileSink = std::make_unique<XCEngine::Debug::FileLogSink>("logs/app.log");
|
||
|
|
XCEngine::Debug::Logger::Get().AddSink(std::move(fileSink));
|
||
|
|
// 关键操作后立即刷新
|
||
|
|
XCEngine::Debug::Logger::Get().Info(XCEngine::Debug::LogCategory::General, "Checkpoint saved");
|
||
|
|
// 确保写入磁盘
|
||
|
|
XCEngine::Debug::Logger::Get().Flush();
|
||
|
|
```
|
||
|
|
|
||
|
|
## 相关文档
|
||
|
|
|
||
|
|
- [FileLogSink 总览](filelogsink.md) - 返回类总览
|