4 个版本 (2 个稳定版本)
2.0.0 | 2024年6月16日 |
---|---|
1.0.0 | 2024年1月4日 |
0.2.0 | 2020年9月7日 |
0.1.0 | 2020年8月31日 |
#73 在 异步 中
75,939 每月下载次数
用于 34 个 Crates (15 个直接使用)
19KB
338 代码行
async-walkdir
为 Rust 实现的异步目录遍历。
基于 async-fs 和 blocking,它使用线程池来处理阻塞 I/O。请参考这些 Crates 以了解其理由。此 Crates 与异步运行时 tokio、async-std、smol 以及基于 futures 0.3 的任何运行时兼容。
我们不打算像 Walkdir Crates 在同步世界中那样功能丰富,但请不要犹豫,提出问题或提交 PR。
示例
use async_walkdir::WalkDir;
use futures_lite::future::block_on;
use futures_lite::stream::StreamExt;
block_on(async {
let mut entries = WalkDir::new("my_directory");
loop {
match entries.next().await {
Some(Ok(entry)) => println!("file: {}", entry.path().display()),
Some(Err(e)) => {
eprintln!("error: {}", e);
break;
},
None => break,
}
}
});
依赖项
~1.3–1.8MB
~33K SLoC