Ich bin ein C# -Newbie, so habe ich Probleme, einige Konzepte zu verstehen, und ich laufe in ein Stück Code, den ich ' m nicht ganz verstehn:Verständnis der Verwendung von Task.Run + Wait() + async + erwarten in einer Zeile verwendet
static void Main(string[] args)
{
Task.Run(async() => { await SomeClass.Initiate(new Configuration()); }).Wait();
while (true) ;
}
Wie ich verstehe, führt dies eine Aufgabe, die eine Methode initiiert. Diese Methode wird ausgeführt und nachdem sie beendet wurde, wird sie in eine Endlosschleife versetzt. Es fühlt sich an, dass entweder der Code keinen Sinn ergibt, oder dass ich nicht richtig verstehe.
Dank
Es wird ein asynchrones Verfahren 'SomeClass.Initiate' zwingt synchron ausgeführt werden. Die Task.Run, die die Async-Methode umschließt, wird nicht benötigt. Die Endlosschleife soll verhindern, dass das Konsolenfenster unmittelbar nach Abschluss von "Initiieren" geschlossen wird. Woher kam dieser Code, gibt es einen Zusammenhang dafür? – ndonohoe
Es gibt bessere Code-Stücke, die für das Ausführen von asynchronen Methoden in der Konsolen-App "run-in" sind - http://StackOverflow.com/questions/17630506/async-at-console-app-in-c –