Angenommen, ich habe diese Funktion:C# laichen neue Aufgabe
void DoWork()
{
//do long work
}
Ich mag diese Funktion auf einem anderen Thread ausgeführt werden. Ich bin es gewohnt, Threads zu verwenden, so kann man es auf einem Thread ausgeführt ist:
new Thread(DoWork).Start();
Ich versuche, die neue task/await
C# Funktion zu erfahren, damit ich die Methode zu
async Task DoWork()
{
await Task.Run(delegate() { /*do stuff*/});
}
modifizierte
Jetzt kann ich es auf diese Weise verwenden:
DoWork().Wait(0);
Oder ich kann die Methode modifizieren wieder:
Und jetzt rufen Sie einfach an:
DoWork();
Welche Lösung soll ich verwenden? Ich brauche weder das Ergebnis der Aufgabe, noch warte ich auf das Ende.
Ich fand dieses Video ziemlich nützlich: https://www.youtube.com/watch?v=6_GTdR0gBVE –
als Referenz für Wissen http://blog.stephencleary.com/2014/04/a-tour-of -task-part-0-overview.html – Vikas
Wenn Sie das Ergebnis der Aufgabe nicht brauchen noch darauf warten, dass es beendet wird - was ist der Grund für die Verwendung von 'async/aw ait? Sie können die Aufgabe ausführen und vergessen: 'Task.Run (() => {/ * tu stuff * /})'. 'async/await' ist nützlich, wenn Sie nach Abschluss der Aufgabe etwas erledigen müssen. –