Ich habe einen Controller in meiner mvc4-Webanwendung, in dem es eine Aktion gibt, die eine andere Funktion aufrufen muss. Was in dieser Funktion passiert, dh der Rückgabewert ist für meine Aktion nicht wichtig. Wie kann ich diese Funktion aufrufen und nie warten, bis sie ausgeführt wird?
Ich denke, es kann durch async gemacht werden, aber mein Punkt ist es, keine Ressourcen zu verwenden, nur die Funktion aufzurufen und nie darauf zu warten, was jemals passiert.
Bitte geben Sie mir einen Rat.
c#
.net
asp.net
asp.net-mvc
user2675751
quelle
quelle
Antworten:
Beachten Sie, dass das Starten einer Methode ohne Rücksicht auf das Ergebnis oder auf Ausnahmen, die sie auslösen kann, riskant ist.
Wenn eine Ausnahme in a ausgelöst wird
Task
, wird sie ausgeblendet, bis Sie:Wait()
für die Aufgabe oder:Task
.Sie können sich 1. und 2. kurz nach dem Aufrufen der Methode selbst behandeln oder eine Fortsetzung anhängen
myTask.OnComplete(myErrorHandler, TaskContinuationOptions.OnlyOnFaulted)
, die ausgeführt werden soll, wenn die ursprüngliche Aufgabe eine Ausnahme auslöst. 3. wird Ihren Prozess zum Absturz bringen; mach das nichtquelle