Files
XCEngine/docs/api/debug/ilogsink/flush.md

39 lines
843 B
Markdown
Raw Normal View History

# ILogSink::Flush
```cpp
virtual void Flush() = 0
```
刷新输出缓冲区,确保所有待写入的日志数据已实际写入目标介质。对于文件类 Sink应调用底层文件系统的 flush对于网络类 Sink应发送缓冲区中的数据。
2026-03-20 02:35:07 +08:00
**返回:** 无
**异常:** 无
**线程安全:** ✅ 线程安全
**复杂度:** O(1)
**示例:**
```cpp
class BufferedLogSink : public XCEngine::Debug::ILogSink {
private:
std::string m_buffer;
public:
void Log(const XCEngine::Debug::LogEntry& entry) override {
m_buffer += entry.message.CStr();
m_buffer += "\n";
}
void Flush() override {
// 将缓冲区数据写入目标
writeToDestination(m_buffer);
m_buffer.clear();
}
};
```
## 相关文档
- [ILogSink 总览](ilogsink.md) - 返回类总览