- 异步日志:日志先进队列,由后台线程统一写文件,避免阻塞。
- 线程安全:使用
std::mutex+std::condition_variable保证并发安全。 - 日志级别:支持
INFO/WARNING/ERROR。 - 双输出:控制台和文件同时输出。
- 单元测试:基于 GoogleTest,覆盖并发场景,100% 通过。
Logger/ │── include/ # 头文件
│ └── Logger.h
│── src/ # 源码
│ ├── Logger.cpp
│ └── main.cpp
│── tests/ # 单元测试
│ └── test_logger.cpp
│── CMakeLists.txt # 构建配置
│── README.md # 项目说明
│── build/ # 编译输出目录
cd build
cmake ..
make./loggerctestC++17
CMake 构建
GoogleTest 单元测试
线程同步(mutex, condition_variable)
异步队列模型