#read-file #file #io #last #seek #blocking #skip

blocking-reader

异步读取文件,将记录上一次读取的 seek 和 skip,并在循环中跳转到上一次读取的位置

1 个不稳定版本

0.1.0 2023年6月5日

#1270 in 异步

MIT/Apache

15KB
68

异步读取文件,将记录上一次读取的 seek 和 skip,并在循环中跳转到上一次读取的位置

基本用法

use blocking_reader::file::FileReadExt;
use std::time::Duration;

#[tokio::main]
async fn main() {
    tracing_subscriber::fmt::init();
    let filepath = "/var/log/syslog";
    loop {
        let results = filepath
            .blocking_read_with_time_limit(&vec![], Duration::from_secs(30))
            .await
            .unwrap();
        if results.len() < 100 {
            println!("{results:?}");
        }

        tokio::time::sleep(Duration::from_secs(1)).await;
    }
}

依赖项

~9–21MB
~307K SLoC