Wie funktioniert die asynchrone Bearbeitung in C #? [Closed]

Ich versuche zu verstehen, wie ich auf die asynchrone Arbeit in C # gewartet habe, und eine Sache verwirrt mich sehr. Ich verstehe, dass jede Methode, die das Schlüsselwort await verwendet, mit async markiert werden muss. Meines Wissens wird der Code unterhalb dieser Zeile nicht ausgeführt, wenn eine Zeile mit dem Schlüsselwort await getroffen wird. Eine asynchrone Operation wird gestartet, um die Anweisung in der Wartezeile fortzusetzen, und die Steuerung wird an die aufrufende Methode zurückgegeben, die mit der Ausführung fortfahren kann.

Frage 1: Ist diese Annahme richtig oder wird der Code unter dem Schlüsselwort await noch ausgeführt?

Zweitens nehme ich an, ich habe eine Dienstmethode asynchron aufgerufen und muss ihr Ergebnis zurückgeben. Die return-Anweisung befindet sich unter dem Schlüsselwort await.

Frage 2: Wann wird die return-Anweisung getroffen, nachdem der asynchrone Aufruf abgeschlossen wurde oder bevor er abgeschlossen wurde?

Frage 3: Ich möchte das Ergebnis dieses Service-Aufrufs verwenden, und eine asynchrone Operation wird nicht helfen, da ich möchte, dass die aufrufende Methode getroffen wird, wenn das Ergebnis zurückgegeben wurde. Ich verstehe, dass dies mit der Result-Eigenschaft gemacht werden kann, die den Aufruf synchronisiert. Aber was ist dann die Verwendung von Async in DB-Vorgängen, weil sie in den meisten Apps tatsächlich 80% der Zeit in Anspruch nehmen.

Frage 4: Wie kann ich Async mit DB-Operationen verwenden? Ist es möglich und empfehlenswert?

Frage 5: In welchen Szenarien werden Async-Operationen nützlich sein? Es scheint, dass jede API jetzt ohne Grund nur Async-Operationen ausführt. Oder habe ich den Sinn der Verwendung von asynchronen Operationen verpasst?

Was ich damit meine, dass api ohne Grund asyn-Methoden erstellt, ist, dass Methoden etwas zurückgeben müssen und bis diese Berechnung durchgeführt wird, wie können sie so im Wesentlichen zurückkehren, dass der Aufruf nicht immer noch blockiert wird, in dem Sinne, dass er unbrauchbar ist, bis Ergebnis wird zurückgegeben?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage