Mysql
 sql >> Base de données >  >> RDS >> Mysql

C# Mysql executenonqueryasync n'est pas asynchrone

Cela se produit parce que le Async méthodes dans MySql.Data connecteur ne sont pas réellement asynchrones. Ils bloquent les E/S réseau et ne reviennent que lorsque l'opération DB est terminée. (Pour une description beaucoup plus détaillée, voir cette question et sa meilleure réponse .) Bogue MySQL #70111 signale ce problème dans le connecteur MySQL.

Pour obtenir des opérations de base de données véritablement asynchrones, vous devrez attendre que ce bogue soit corrigé ou passer à un autre connecteur.

J'ai développé un nouveau connecteur entièrement asynchrone (MySqlConnector sur NuGet ; source sur GitHub ). Il prend en charge MySqlDataAdapter depuis version 0.33.0 .