【Tokio】进入运行时上下文

环境

  • Time 2022-01-10
  • Rust 1.57.0
  • Tokio 1.15.0

概念

参考:https://docs.rs/tokio/latest/tokio/runtime/struct.Runtime.html

enter 方法可以进入异步运行时的上下文。

示例

main.rs

use std::{io, time::Duration};

use tokio::runtime::Runtime;

fn main() -> io::Result<()> {
    let runtime = Runtime::new()?;

    runtime.spawn(hello());
    // 删除它将导致异常
    let _guard = runtime.enter();
    // 如果没有前面的进入异步运行时的上下文,将会失败
    tokio::spawn(hello());
    runtime.shutdown_timeout(Duration::from_secs(4));
    Ok(())
}

async fn hello() {
    println!("hello tokio");
}

总结

enter 方法可以进入异步运行时的上下文。

附录

上一篇:Jenkins+SonarQube代码审查(回忆不能抹去,只好慢慢堆积。岁月带你走上牌桌,偏偏赌注是自己。)


下一篇:Nvidia Agx Xaiver平台四路camera同步采集调试