RUST编程

012 Rust 异步编程,在 async 块中使用?

2020-07-19  本文已影响0人  令狐壹冲

在Rust异步编程中能否像在同步编程中一样使用问号呢?我们来试试。

示例

[dependencies]
futures = "0.3"
use futures;

async fn foo() -> Result<(), String>{
    "foo";
    Ok(())
}

async fn func() -> Result<(), String>{

    let fut = async {
        foo().await?;
        Ok::<(), String>(()) // <- note the explicit type annotation here
        //Ok(()) // <- note the explicit type annotation here
    };

    fut.await
}

fn main() {
    let _ = futures::executor::block_on(func());
    println!("Hello, world!");

}
上一篇 下一篇

猜你喜欢

热点阅读