011 Rust 异步编程,返回错误

在Rust异步块中,当发生返回错误的时,会是怎么样的呢?本节就这个知识点进行讲解。

示例

  • 源码
use futures;

async fn foo() {
    "foo"
}

fn main() {
    futures::executor::block_on(foo());
}
  • 配置文件
[dependencies]
futures = "0.3"

此示例报错如下:

error[E0308]: mismatched types
  --> src/main.rs:20:2
   |
20 |     "foo"
   |     ^^^^^ expected `()`, found `&str`

error: aborting due to previous error

在原书中的例子会出现相反的错误,很显然,该bug已经解决。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。