1 unstable release
Uses new Rust 2024
0.1.5 | Mar 10, 2025 |
---|
#6 in #ctx
113 downloads per month
9KB
97 lines
tokio-tree-context
Similar to tokio-context, but support multiple level context
Usage
Example
let mut ctx = tokio_tree_context::Context::new();
let mut ctx1 = ctx.new_child_context();
let mut ctx12 = ctx1.new_child_context();
ctx.spawn(async move {
sleep("ctx".into(), 100).await;
});
ctx1.spawn(async move {
sleep("ctx1".into(), 100).await;
});
ctx12.spawn(async move {
sleep("ctx12".into(), 100).await;
});
println!("Cancelling CTX 1");
drop(ctx1);
sleep("main".into(), 5).await;
println!("Cancelling CTX 12");
drop(ctx12);
sleep("main".into(), 5).await;
println!("Cancelling CTX");
drop(ctx);
sleep("main".into(), 5).await;
Dependencies
~2.2–8MB
~61K SLoC