[過去ログ]
Go language part 5 (1002レス)
Go language part 5 http://mevius.5ch.net/test/read.cgi/tech/1645915400/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
リロード規制
です。10分ほどで解除するので、
他のブラウザ
へ避難してください。
919: デフォルトの名無しさん [sage] 2025/05/18(日) 23:54:17.15 ID:eaOArS/2 >>918のasync関数fooは以下のように機械的に通常関数fooへと自動変換できる ステートマシンを使う必要はない function foo() { return new Promise((resolve, reject) => { console.log("hello"); delay(1).then((_x1) => { let a = _x1; delay(2).then((_x2) => { let b = _x2; let c = a + b; console.log(`${a} + ${b} = ${c}`); resolve(c); }); }); }); } http://mevius.5ch.net/test/read.cgi/tech/1645915400/919
921: デフォルトの名無しさん [sage] 2025/05/19(月) 00:18:33.88 ID:m1yBrNr9 >>920 C#やRustは、await時に一時的にスケジューラに戻すために、ステートマシンのコルーチンに変換しますね。 しかし、JavaScriptはそのコルーチン化が不要なため、ステートマシンへの変換が不要ではないでしょうか? 実際にステートマシンを使わずに変換している>>919を使ってみたら、元のasync関数と全く同様に動作しました。 http://mevius.5ch.net/test/read.cgi/tech/1645915400/921
924: デフォルトの名無しさん [sage] 2025/05/19(月) 00:31:26.37 ID:m1yBrNr9 >>922 JavaScriptの場合はそうですよ Promiseでくくれば本物の非同期で簡単に並行処理できます C#のTask.Runも不要です async関数の登場以前からasyncと同じ動作で動いていますよ async関数は>>919のような感じのsyntax sugarなんです http://mevius.5ch.net/test/read.cgi/tech/1645915400/924
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.055s