Skip to content

Commit a31cffd

Browse files
committed
apply review: use task tracker
1 parent fdba9e2 commit a31cffd

File tree

2 files changed

+6
-4
lines changed

2 files changed

+6
-4
lines changed

tokio/Cargo.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -136,6 +136,7 @@ features = [
136136
[dev-dependencies]
137137
tokio-test = { version = "0.4.0", path = "../tokio-test" }
138138
tokio-stream = { version = "0.1", path = "../tokio-stream" }
139+
tokio-util = { version = "0.7", path = "../tokio-util", features = ["rt"] }
139140
futures = { version = "0.3.0", features = ["async-await"] }
140141
mockall = "0.13.0"
141142
async-stream = "0.3"

tokio/tests/fs_uring.rs

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@ use tempfile::NamedTempFile;
1010
use tokio::{
1111
fs::OpenOptions,
1212
runtime::{Builder, Runtime},
13-
task::JoinSet,
1413
};
14+
use tokio_util::task::TaskTracker;
1515

1616
fn multi_rt(n: usize) -> Box<dyn Fn() -> Runtime> {
1717
Box::new(move || {
@@ -85,15 +85,16 @@ fn open_many_files() {
8585
let (_tmp_files, paths): (Vec<NamedTempFile>, Vec<PathBuf>) = create_tmp_files(NUM_FILES);
8686

8787
rt.block_on(async move {
88-
let mut set = JoinSet::new();
88+
let tracker = TaskTracker::new();
8989

9090
for i in 0..10_000 {
9191
let path = paths.get(i % NUM_FILES).unwrap().clone();
92-
set.spawn(async move {
92+
tracker.spawn(async move {
9393
let _file = OpenOptions::new().read(true).open(path).await.unwrap();
9494
});
9595
}
96-
while let Some(Ok(_)) = set.join_next().await {}
96+
tracker.close();
97+
tracker.wait().await;
9798
});
9899
}
99100

0 commit comments

Comments
 (0)