【C#】非同期処理の実装方法 ALL 2023.06.182023.06.19 この記事は約3分で読めます。 今回は、「非同期処理」について解説していこうと思います。なじみのない単語に聞こえる方もいらっしゃるかと思いますが、どうぞ最後まで読んで理解してもらえると幸いです。 目次 目次.非同期処理って何?.どういった時に非同期にする?.やり方.コード例. 目次. 非同期処理って何?. 非同期処理とは、処理される順番が関係ないロジックになります。本来ロジックは、記述された順番によって処理されます。 int a;int b;a = 1;b = 2; このように記述されていた場合は、「aの宣言」「bの宣言」「aの値代入」「bの値代入」の順番で処理されます。では次のようにした場合はどうでしょうか。 int a;int b;a = 1; –この処理を非同期にするb = 2; こうすると、「aの値代入」の処理完了を待たずに「bの値代入」が実行されるため、同時に実行されている状態になります。「aの値代入」に時間がかかった場合、「bの値代入」が先に完了することもあり得ます。これが非同期処理です。 どういった時に非同期にする?. ではどう言った場面で使用するのでしょうか。それはズバリ時間がかかる処理を非同期にし、待ち状態を解消したい場面で使用します。例えば、「外部のサービスに接続するとき」は非同期にすることがあります。具体的にはネットワーク外のAPIへのアクセス、データベースサーバなど別機器へのアクセスなどが該当します。接続設定のミスでつながらない場合も、システムは一定時間接続を試みます。同期処理で記述されていた場合は、その間が待ち時間としてユーザを待たせてしまいますが、非同期にすることでユーザーは別の操作が可能になります。 やり方. await:非同期処理に付与async:非同期処理が含まれるメソッドに付与 (アクセス修飾子) async (戻り値型) (メソッド名)(引数){ await 非同期処理} コード例. public async void MethodName(){ await ShowMessage(“test”);}private void ShowMessage(string message){ labelMessage.text = message;}