C#Asynchrones Programmieren
und : Vereinfachen Sie asynchrone Operationen async
await
Asynchrones Programmieren ermöglicht es Code, gleichzeitig auszuführen, ohne den Haupt -Thread zu blockieren.
async
im Vergleich zum Hintergrund -Thread await
Im Gegensatz zu den traditionellen Hintergrund -Threads, die unabhängig sind, verwenden und die vom Compiler im Hintergrund erzeugte
Statusmaschine. Der Fortschritt dieses staatlichen Maschinenverfolgungs asynchroner Betrieb ermöglicht es dem Hauptfaden, nach Abschluss des Hintergrundvorgangs fortzufahren. async
await
Beispieldetails
button1_click ist die Methode als gekennzeichnet, da sie eine asynchrone Operation doomethingAsync enthält. Wenn DoSomethingAsync im Hintergrund ausgeführt wird (der spezifische Thread hängt von der Thread -Pool -Konfiguration ab), hält der UI -Thread die Antwort und die Benutzer können weiterhin mit der Anwendung interagieren.
Diese Codezeile wird nach Dosendosenabschluss abgeschlossen und der Haupt -Thread wird nach der -Grammatikempfangsergebnisse ausgeführt. Dies bedeutet, dass der Code nach erst nach Abschluss der asynchronen Operation ausgeführt wird.
async
Die Zersetzung von Funktionen int a = 1;
await
await
Die folgenden Beispiele zeigen den Ausführungsprozess weiterhin mit
:
async
await
myMethodasync beginnt die LongRunningoperationAsync im Hintergrund auszuführen und zu starten.
Der Haupt -Thread wird unabhängig ausgeführt, während LongrunningoperationAsync im Hintergrund ausgeführt wird. async
await
Wenn die LongRunningoperationAsync abgeschlossen ist, wird der Hauptfaden wieder aufgenommen und vom Interrupt fortgesetzt.
<code class="language-csharp">public async Task MyMethodAsync() { Task<int> longRunningTask = LongRunningOperationAsync(); // 这里可以执行其他独立的工作 int result = await longRunningTask; // 这里使用result } public async Task<int> LongRunningOperationAsync() { await Task.Delay(1000); return 1; }</code>
Das obige ist der detaillierte Inhalt vonWie vereinfachen 'Async' und 'Await' die asynchrone Programmierung in C#?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!