The Rust Teamはオープンソースのプログラミング言語Rustに非同期処理"async-await"を実装したv1.39.0をリリースしたことを公式ブログで発表した。
-
Rust公式サイト
v1.39のアナウンスメントと別立てで用意された投稿"Async-await on stable Rust!"には2016年の最初の提案からの歩みに触れながら、"Minimum Viable Product"(最小実行可能製品)ではあるが、今後のRustの重要なストーリーになると大きな意味合いを持つバージョンアップであると述べている。
ブログではv1.36.0から標準機能として実装されている非同期処理のためのFutureと今回実装されたasync fnを付した関数と.awaitを用いて非同期処理のサンプルを示している。通常の関数と異なり、async fnが付された関数は呼び出されても実行を待機し、.awaitオペレーターが付されたfutureを返す。
公式ブログ掲示の解説サンプル
async fn first_function() -> u32 { .. }
async fn another_function() {
// Create the future:
let future = first_function();
// Await the future, which will execute it (and suspend
// this function if we encounter a need to wait for I/O):
let result: u32 = future.await;
...
}
Firefoxの高速化の立役者とも評され、Mozillaが支援するオープンソースのプログラミング言語であるRust。米AWSもサポートを発表するなど注目される言語のひとつ。