011 Rust 非同步程式設計,返回錯誤

linghuyichong發表於2020-07-15

在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已經解決。

本作品採用《CC 協議》,轉載必須註明作者和本文連結
令狐一衝

相關文章