8 个版本 (破坏性)
0.7.1 | 2024年2月17日 |
---|---|
0.7.0 | 2023年9月6日 |
0.6.0 | 2023年9月5日 |
0.5.0 | 2023年9月5日 |
0.1.0 | 2023年7月22日 |
#628 in 文件系统
在 stdecor 中使用
17KB
167 行
lineriver
lineriver 是一个 Rust crate,提供用于 Read
对象的非阻塞缓冲行读取器。
LineReader
对象类似于 BufReader
对象,它只返回完整的行,但不阻塞。另一方面,LineRead
trait 类似于 BufRead
trait - 它集中了公共 API,使我们能够创建具有不同底层类型的 LineReader 的无差别集合。
此 crate 与 polling crate 工作得非常好,该 crate 允许我们在多个流(文件、套接字等)中阻塞等待数据可用。它是使用线程和/或 tokio 的替代方案。
有关详细信息,请参阅 LineReader
。
用法
解释如何使用 LineReader
的最简单方法是使用忙循环示例
use lineriver::{LineReader, LineRead};
let mut linereader = LineReader::new(reader)?;
while !linereader.eof() {
linereader.read_available()?;
let lines = linereader.lines_get();
for line in lines {
print!("{}", line);
}
}
依赖关系
~485–770KB
~12K SLoC