Detta händer eftersom Async
metoder i MySql.Data
kontakterna är faktiskt inte asynkrona. De blockerar på nätverkets I/O och återkommer först när DB-operationen är klar. (För en mycket mer detaljerad beskrivning, se den här frågan och dess bästa svar
.) MySQL-fel #70111
rapporterar detta problem i MySQL-anslutningen.
För att få verkligt asynkrona DB-operationer måste du vänta tills felet är åtgärdat, eller byta till en annan anslutning.
Jag har utvecklat en ny, helt asynkron kontakt (MySqlConnector på NuGet
; källa på GitHub
). Den stöder MySqlDataAdapter
sedan version 0.33.0
.