Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

C# MySQL executenonqueryasync não é assíncrono


Isso acontece porque o Async métodos no MySql.Data conector não são realmente assíncronos. Eles bloqueiam a E/S da rede e só retornam quando a operação do banco de dados é concluída. (Para uma descrição muito mais detalhada, veja esta pergunta e sua resposta principal .) bug #70111 do MySQL relata esse problema no conector MySQL.

Para obter operações de banco de dados verdadeiramente assíncronas, você terá que esperar até que esse bug seja corrigido ou mudar para um conector diferente.

Estou desenvolvendo um novo conector totalmente assíncrono (MySqlConnector no NuGet ; fonte no GitHub ). Ele suporta MySqlDataAdapter desde a versão 0.33.0 .