在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 協議》,轉載必須註明作者和本文連結