Page 1 of 1

Asp.Net Core 2.1 Wait gibt dem Anrufer beim zweiten Durchlauf keine Kontrolle

Posted: 21 Dec 2024, 17:01
by Guest
Ich bin dabei, alle meine Datenbankoperationen asynchron zu machen. Allerdings scheine ich nicht die gewünschten Ergebnisse der Asynchronität zu erzielen.

z.B. -

Ich füge 100 Zeilen in einer Schleife in eine Tabelle in einer Datenbank ein. Die Funktion, die dies tut, ist eine asynchrone Funktion. Es scheint seinem Anrufer nicht die Kontrolle zu geben, wenn es darauf wartet. Der Code ist unten -

[HttpGet]
[Route("/api/logtest")]
public async Task logTestAsync()
{
JObject retval = new JObject();
DateTime dt1 = DateTime.Now;

Task t = BulkLogInsertAsync();

DateTime dt2 = DateTime.Now;
retval["Exec_Time"] = dt2.Subtract(dt1).TotalMilliseconds;

await t;

DateTime dt3 = DateTime.Now;
retval["Await_Time"] = dt3.Subtract(dt2).TotalMilliseconds;
return retval;
}

private async Task BulkLogInsertAsync()
{
List allTasks = new List();
for (int i = 0; i