6 个版本 (3 个稳定版)
1.1.8 | 2022 年 7 月 16 日 |
---|---|
1.1.5 | 2021 年 12 月 24 日 |
0.1.2 | 2020 年 1 月 18 日 |
#1 in #lf
7KB
67 代码行数(不包括注释)
名称
logfast - 具有简单界面的超快速日志记录
示例
use logfast::LogFast;
fn main() {
let buffer_size = 100;
let mut lf = LogFast::new("my.log", buffer_size).unwrap();
lf.log("Here's a test log line");
lf.log("And here's another");
}
$ cat my.log
2020-01-10 23:54:25.177300600: Here's a test log line
2020-01-10 23:54:25.177380200: And here's another
描述
当你快速处理事情时,同步日志可能会真的妨碍你。通常,每次你写入日志文件时,主线程都会阻塞,直到写入操作完成(这可能会很慢)。但在 LogFast
中不是这样。
- 将日志消息推送到另一个线程的缓冲区
- 立即返回,让你继续操作
与此同时,在 LogFast
线程中,它会尽可能快地将日志写入文件,然后进入休眠状态,直到新的日志消息到来。这实际上将日志写入与主线程并行化。很酷!
支持
请在此处报告任何错误或功能请求:
请随意fork存储库并提交拉取请求 :)
另请参阅
作者
保证
不提供任何保证。
版权和许可
版权所有 (C) 2021 by Alfie John
本程序是自由软件:您可以按照自由软件基金会发布的 GNU 通用公共许可证的条款重新分发和/或修改它,许可证版本为 3,或者(根据您的选择)任何后续版本。
本程序按“原样”提供,不提供任何明示或暗示的保证;甚至不包括对适销性或特定用途适用性的暗示保证。有关详细信息,请参阅 GNU 通用公共许可证。
您应该已经收到一份 GNU 通用公共许可证副本。如果没有,请参阅 https://www.gnu.org/licenses/。
依赖项
~1MB
~18K SLoC