async-std/examples/task-local.rs
2019-08-08 14:44:48 +02:00

19 lines
362 B
Rust

//! Creates a task-local value.
#![feature(async_await)]
use std::cell::Cell;
use async_std::{task, task_local};
task_local! {
static VAR: Cell<i32> = Cell::new(1);
}
fn main() {
task::block_on(async {
println!("var = {}", VAR.with(|v| v.get()));
VAR.with(|v| v.set(2));
println!("var = {}", VAR.with(|v| v.get()));
})
}