gpt4 book ai didi

.net - MySQLCommand BeginExecuteReader 缺少一个 AsyncCallback 参数,使其几乎无用

转载 作者:行者123 更新时间:2023-11-30 21:23:37 26 4
gpt4 key购买 nike

我希望这里有人可以帮助我。

我工作的公司希望我使用 MySQL 而不是 MSSQL。所以我下载了最新的驱动程序(6.1),正在移植DB层。

但是我找不到以回调作为参数的 BeginExecuteReader 函数。

这是有原因的吗?还是它与 MySQL 的工作方式不同?

据我所知,如果代码没有引发回调,我将需要进行轮询,这会使其变慢。每个连接都使用一个阻塞线程也是我想避免的事情。

有人知道如何解决这个问题吗? (除了改变可能超出我能力范围的驱动程序)

R

最佳答案

MySQL Connector 6.3.4 版实现了异步方法,但它似乎只异步调用委托(delegate),因此它不会阻塞调用线程,但它不会从 ThreadPool 中保存任何线程。 Here's the bug report about this .

而且,正如您所说,它没有回调参数。 Here's the bug report about this .

我相信devart's data providers正确实现异步方法,但它们不是免费的。

无论如何,异步数据库调用本身并不意味着更好的整体可扩展性。我建议阅读文章“Should my database calls be Asynchronous?”以进行深入分析。

关于.net - MySQLCommand BeginExecuteReader 缺少一个 AsyncCallback 参数,使其几乎无用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1444884/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com