Heim > Backend-Entwicklung > C++ > Wie kann ich asynchrone Methoden in der Hauptfunktion einer C#-Konsolenanwendung verwenden?

Wie kann ich asynchrone Methoden in der Hauptfunktion einer C#-Konsolenanwendung verwenden?

Patricia Arquette
Freigeben: 2025-01-05 13:05:40
Original
441 Leute haben es durchsucht

How Can I Use Async Methods in a C# Console Application's Main Function?

Verwenden von async in einer Konsolenanwendung in C#

In C# verwenden Sie async in Eine Konsolenanwendung erfordert sorgfältige Überlegungen, da die Hauptfunktion nicht als markiert werden kann asynchron. Dies liegt daran, dass der Einstiegspunkt einer Konsolenanwendung nicht über den Modifikator async verfügen kann.

Um dieses Problem zu beheben, stehen zwei Hauptoptionen zur Verfügung:

  1. Warten Sie auf die Async-Aufgabe:

    • Bei diesem Ansatz können Sie die verwenden Wait()-Methode für die zurückgegebene Aufgabe aus der Funktion async in der Funktion Main. Dadurch wird der Hauptthread blockiert, bis die asynchrone-Aufgabe abgeschlossen ist. Zum Beispiel:
    static void Main()
    {
       MainAsync().Wait();
    }
    
    static async Task MainAsync()
    {
       ...
    }
    Nach dem Login kopieren
  2. Verwenden Sie einen benutzerdefinierten asynchronen Kontext:

    • Alternativ können Sie Ihren benutzerdefinierten AsyncContext-Klasse zur Abwicklung der asynchronen Ausführung. Diese Klasse kann eine Run-Methode bereitstellen, die eine asynchrone-Aktion als Argument verwendet und auf deren Abschluss wartet. Zum Beispiel:
    static void Main()
    {
       AsyncContext.Run(() => MainAsync());
    }
    
    static async Task MainAsync()
    {
       ...
    }
    Nach dem Login kopieren
Durch die Verwendung einer dieser Optionen können Sie

asynchronen Code in einer Konsolenanwendung ausführen und gleichzeitig die Kompatibilität mit den Anforderungen der Plattform wahren .

Das obige ist der detaillierte Inhalt vonWie kann ich asynchrone Methoden in der Hauptfunktion einer C#-Konsolenanwendung verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage