Main() からの非同期メソッドの呼び出し
C# に導入された新機能の 1 つは、非同期プログラミングのサポートです。これにより、メイン スレッドをブロックすることなく、長時間実行される操作を実行できるようになり、ユーザー インターフェイスの応答性が向上します。
提供されたコード サンプルには、Go() という非同期メソッドがあります。 Main() メソッドから呼び出します。これを行うには、次の 2 つのアプローチのいずれかを使用できます。
オプション 1: async/await を使用する (C# 7.1 以降)
C# 7.1 以降では、 async キーワードを使用して、Main() メソッドを非同期にすることができます。これにより、メイン スレッドをブロックせずに Go() メソッドの結果を待つことができます。
static async Task Main(string[] args) { test t = new test(); await t.Go(); Console.WriteLine("finished"); Console.ReadKey(); }
オプション 2: ブロックを使用する (7.1 より前の C# バージョンの場合)
7.1 より前のバージョンの C# では、Go() メソッドが完了するまで Wait() メソッドを使用してメイン スレッドをブロックできます。
static void Main(string[] args) { test t = new test(); t.Go().Wait(); Console.WriteLine("finished"); Console.ReadKey(); }
コード サンプルで使用した、コールバックを伴うアプローチは必要ありません。 async/await パターンまたは Wait() メソッドを使用すると、Main() から簡単な方法で非同期メソッドを呼び出すことができます。
以上がC# の Main() メソッドから非同期メソッドを呼び出すにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。