C# wartet

WBOY
Freigeben: 2024-09-03 15:04:52
Original
497 Leute haben es durchsucht

Das Schlüsselwort „await“ in der Programmiersprache C# wird verwendet, um alle eingeschlossenen asynchronen Methoden anzuhalten, bis die von der asynchronen Methode bereitgestellten Vorgänge abgeschlossen sind. Damit ein Entwickler mehrere Funktionen asynchron aufrufen kann, werden Async und Wait häufig verwendet und empfohlen. Es ist möglich, fast alle Funktionen der asynchronen Programmierung zu erben, indem einfach die Funktion „await“ zusammen mit async implementiert wird. Kommen wir nun zum Verständnis der Standardsyntax zur Implementierung des Schlüsselworts „await“.

Syntax:

Die Standardsyntax für das Schlüsselwort „await“ ist einfach: Sie enthält das Schlüsselwort, gefolgt von der Funktion oder Methode. Die Syntax lautet wie folgt:

await anyFunction();
Nach dem Login kopieren

Hier haben wir die Syntax, die mit dem Schlüsselwort „await“ beginnt, gefolgt von einer Funktion, die eine beliebige Funktion im Programm sein kann. Die Freiheit besteht darin, das Schlüsselwort „await“ aufzurufen und an jede Methodenklasse oder Funktion innerhalb der Syntax zu übergeben.

Wie funktioniert das Wait-Keyword in C#?

Im weiteren Verlauf werden wir verstehen, wie die Schlüsselwörter „await“ in C# tatsächlich funktionieren. Grundsätzlich stoppt das Schlüsselwort „await“ die Vorgänge der asynchronen Methode, bis die Operanden die Vorgänge abgeschlossen haben. Nach Abschluss der asynchronen Operation kehrt das Schlüsselwort „await“ dann zum Operationsergebnis zurück, sofern vorhanden. Das gleiche Schlüsselwort „await“ blockiert keine Bedrohung durch die asynchrone Methode und nach dem Anhalten der einschließenden asynchronen Methode wird die Kontrolle über das Programm wieder an den Programmaufrufer zurückgegeben. So funktioniert das Schlüsselwort „await“ und wie man Abläufe programmiert, während man das Schlüsselwort „await“ implementieren muss. Im weiteren Verlauf werden wir nun das Schlüsselwort „await“ implementieren und sehen, wie es in realen Beispielen funktioniert.

Beispiele für C# erwarten Sie

Da wir nun verstanden haben, was das Schlüsselwort „await“ ist und wie es funktioniert, fahren wir mit der Demonstration des Schlüsselworts „await“ zusammen mit Beispielen fort. Hier verwenden wir für unser erstes Beispiel einfach eine einzelne Methode mit einer print-Anweisung und einem Warte-Schlüsselwort.

Beispiel #1

Code:

using System;
using System.Threading.Tasks;
class Program {
static void Main(string[] args) {
first_meth();
Console.ReadKey();
}
public static async Task first_meth() {
await Task.Run(() =>  {
for (int a = 0 ; a < 2; a++ )  {
Console.WriteLine(" Simple demonstration of await keyword.");
}
});
}
}
Nach dem Login kopieren

Ausgabe:

C# wartet

Code-Erklärung: Dies ist eine sehr einfache Demonstration des Schlüsselworts „await“, bei der wir eine einzelne Methode und die Hauptmethode haben. Die Hauptmethode ruft die erste Methode auf und muss unbedingt ausgeführt werden. Die Methode verfügt über eine Implementierung des Schlüsselworts „await“. Die Ausgabe ist eine zweimal gedruckte Druckanweisung.

Beispiel #2

Wie erwartet ist die Ausgabe die zweimal gedruckte Anweisung. Für unser nächstes Beispiel werden wir zwei verschiedene Methoden haben, die in keiner Weise voneinander abhängig sind, und wir werden sie über die Hauptmethode aufrufen. Der Code für das Programm lautet wie folgt:

Code:

using System;
using System.Threading.Tasks;
class Program {
static void Main(string[] args) {
exam1();
exam2();
Console.ReadKey();
}
public static async Task exam1()  {
await Task.Run(() =>  {
for (int a = 0 ; a < 5 ; a++ )  {
Console.WriteLine(" This will be printed 5 times.");
}
});
}
public static void exam2() {
for (int a = 0 ; a < 2 ; a++ ) {
Console.WriteLine(" This statement will be printed 2 times. ");
}
}
}
Nach dem Login kopieren

Ausgabe:

C# wartet

Code-Erklärung: Für unser erstes Beispiel haben wir zwei verschiedene Methoden, die völlig unabhängig sind, und wir haben diese Methoden von der Hauptmethode des Programms aufgerufen. Beginnend mit den benötigten Systemdateien haben wir unser Klassenprogramm mit der Hauptmethode, der Hauptmethode, innerhalb derer wir die beiden zu deklarierenden Methoden aufrufen. Unsere erste Methode „examen1“ wird eingeleitet, mit dem Schlüsselwort „await“, gefolgt von einer Lambda-Funktion und einer Anweisung zum Drucken einer Ausgabeanweisung. Dann haben wir unsere zweite Methode exam2, die eine for-Anweisung enthält, die die Ausgabeanweisung mehrmals ausgibt.

Beispiel #3

Wie erwartet sind die Ausgabeanweisungen wie im Code erwähnt. Im weiteren Verlauf werden wir das Schlüsselwort „await“ mit einem anderen Beispiel implementieren, in dem wir drei Methoden und wenige Druckanweisungen haben werden.

Code:

using System;
using System.Threading.Tasks;
class Program {
static void Main(string[] args) {
Console.WriteLine("\n");
callMethod();
Console.ReadKey();
}
public static async void callMethod() {
Task<int> task = exam1();
exam2();
int total = await task;
exam3(total);
}
public static async Task<int> exam1() {
int total = 0;
await Task.Run(() =>
{
for (int a = 0 ; a < 10 ; a++ )  {
Console.WriteLine(" This is a simple statement. ");
total += 1;
}
});
return total;
}
public static void exam2()  {
for (int a = 0 ; a < 2 ; a++ )  {
Console.WriteLine(" This is a second output statement.");
}
}
public static void exam3(int total) {
Console.WriteLine(" Total number of statements from first method are   " + total);
}
}
Nach dem Login kopieren

Ausgabe:

C# wartet

Code-Erklärung: Für unser drittes Beispiel haben wir drei verschiedene Methoden und wir rufen diese Methoden von der Hauptmethode aus auf. Mit unserer Hauptmethode rufen wir die callMethod auf, die eine Aufgabe zum Aufrufen der Methode exam1 hat und so wird exam1 ausgeführt. Gemäß dem Programm wird hier die Methode „examen1“ nicht zuerst ausgeführt, da sie über das Schlüsselwort „await“ verfügt. Sie wechselt also zur nächsten Methode, nämlich „examen1“, und die Methode „examen2“ wird ausgeführt. Dabei handelt es sich um eine Anweisung, die wie in erwähnt zweimal gedruckt wird die for eine Schleife. Dann wird unsere Methode „examen1“ gedruckt, gefolgt von der Methode „examen3“. Die Methode „examen3“ ist eine einzelne Anweisung. Insgesamt wird eine Anweisung mit 13 Ausgaben ausgegeben. Die letzte Anweisung gibt an, wie oft wir die Anweisung aus der Methode „exam1“ drucken. Wie erläutert, ist die Gesamtzahl der 13 Druckanweisungen eine einfache Ausführung des Schlüsselworts „await“ mit mehreren Methoden.

Fazit

Abschließend wird das Schlüsselwort „await“ verwendet, um Ereignisse auszusetzen und dem Aufrufer die Kontrolle über das Programm zurückzugeben. Diese Funktionalität wird häufig verwendet, wenn wir über mehrere Methoden und Funktionen verfügen. Das Schlüsselwort „await“ wird verwendet, um die Kontrolle wieder an den Aufrufer zurückzugeben, und kann nur innerhalb der asynchronen Methode angewendet werden.

Das obige ist der detaillierte Inhalt vonC# wartet. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!