Await演算子はAsyncメソッド内でのみ使用可能 [重複]。
2023-08-13 12:19:46
質問
私は、Visual Studio 2012 内の新しい .NET 非同期機能をテストするための簡単なプログラムを作ろうとしています。私は通常、時間のかかるコードを非同期で実行するために BackgroundWorkers を使用しますが、時々、比較的単純な (しかし高価な) 操作のために面倒に思えます。新しい async 修飾は、使用するのが素晴らしいように見えますが、残念ながら簡単なテストを行うことができないようです。
以下は私のコードで、C# コンソール アプリケーションです。
static void Main(string[] args)
{
string MarsResponse = await QueryRover();
Console.WriteLine("Waiting for response from Mars...");
Console.WriteLine(MarsResponse);
Console.Read();
}
public static async Task<string> QueryRover()
{
await Task.Delay(5000);
return "Doin' good!";
}
MSDN でいくつかの例をチェックアウトし、このコードが動作するように見えるのですが、代わりに "await QueryRover();" を含む行でビルド エラーが発生します。私がおかしくなっているのか、何か怪しいことが起きているのでしょうか。
どのように解決するのですか?
を使用することができます。
await
の中で
async
メソッドと
Main
にはできません。
async
.
を使用する必要があります。
async
-と互換性のあるコンテキストで、呼び出し
Wait
を返します。
Task
の中に
Main
メソッドを呼び出すか、あるいは単に返された
Task
を無視して
Read
. なお
Wait
はあらゆる例外を
AggregateException
.
もしあなたが良いイントロが欲しいなら、私の
async
/
await
イントロポスト
.
関連
-
[解決済み] forEachループでasync/awaitを使用する
-
[解決済み] async」と「await」の使い方とタイミング
-
[解決済み] 非同期Task<T>メソッドを同期的に実行するにはどうしたらいいですか?
-
[解決済み] async/await - タスクとvoidをいつ返すか?
-
[解決済み] 非同期関数+await+setTimeoutの組合せ
-
[解決済み] 複数のタスクにasync/awaitを使用する
-
[解決済み] ロックステートメントのボディ内で 'await' 演算子を使用できないのはなぜですか?
-
[解決済み] C#でawaitを使わずに非同期メソッドを安全に呼び出す方法
-
[解決済み] await/asyncを使用しているときにHttpClient.GetAsync(...)が返らない
-
[解決済み] Task.Runをメソッドに入れないと非同期にはならないのですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] [Solved] 1つ以上のエンティティで検証に失敗しました。詳細は'EntityValidationErrors'プロパティを参照してください [重複]。
-
[解決済み] メンバー '<メンバー名>' にインスタンス参照でアクセスできない
-
[解決済み】ここで「要求URIに一致するHTTPリソースが見つかりませんでした」となるのはなぜですか?
-
[解決済み] 'SubSonic.Schema .DatabaseColumn' 型のオブジェクトをシリアライズする際に、循環参照が検出されました。
-
[解決済み】EF 5 Enable-Migrations : アセンブリにコンテキストタイプが見つかりませんでした
-
[解決済み】ランダムなブーリアンを生成する最速の方法
-
[解決済み】C#のequal to演算子でtextとvarcharのデータ型は互換性がない
-
[解決済み] [Solved] .NETでスレッドの終了を待つには?
-
[解決済み】ユーザー設定値を別のユーザー設定値で設定する
-
[解決済み】コンソールアプリのMainメソッドにasync修飾子を指定できない。