Heim >Backend-Entwicklung >C++ >Warum sind meine asynchronen Entity Framework-Vorgänge langsamer als synchrone Vorgänge?

Warum sind meine asynchronen Entity Framework-Vorgänge langsamer als synchrone Vorgänge?

Patricia Arquette
Patricia ArquetteOriginal
2025-01-10 18:36:42313Durchsuche

Why Are My Entity Framework Async Operations Slower Than Synchronous Ones?

Entity Framework Async: Unerwarteter Leistungsengpass

Die Migration zu asynchronen Controllern und Datenbankoperationen (mit ToListAsync() anstelle von ToList()) verbessert häufig die Anwendungsleistung. Dies ist jedoch nicht immer der Fall. In einem aktuellen Szenario wurde die Abfrageausführung durch den Wechsel zu asynchronen Methoden erheblich verlangsamt. Die folgende Abfrage, die „Album“-Objekte mit einer einfachen Datenbankverknüpfung abruft, veranschaulicht dieses Problem:

<code class="language-csharp">var albums = await this.context.Albums
    .Where(x => x.Artist.ID == artist.ID)
    .ToListAsync();</code>

Die generierte SQL-Abfrage lautet (der Kürze halber gekürzt):

<code class="language-sql">SELECT 
[Extent1].[ID] AS [ID], 
[Extent1].[URL] AS [URL], 
[Extent1].[ASIN] AS [ASIN], 
...</code>

Das obige ist der detaillierte Inhalt vonWarum sind meine asynchronen Entity Framework-Vorgänge langsamer als synchrone Vorgänge?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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