哪个异步调用用于数据库连接和仍然响应的GUI? -

时间:2010-05-16 08:20:39

标签: c# multithreading asynchronous

我的应用程序连接到MySQL,但有时需要一段时间,GUI就会被冻结。我想在另一个线程上建立连接,我猜BeginInvoke将是最好的方式(我知道后台工作者,但我想学习这个)。我已经研究过MSDN页面,但我不明白最好的使用方法是什么? 他们还说当调用async.method的线程不需要知道结果时你只能使用回调...我不理解它,因为我相信我可以在另一个线程中设置一些变量来“传递”结果好。 我只需要在建立连接时不冻结GUI。谢谢你的建议。

1 个答案:

答案 0 :(得分:2)

到目前为止,处理它的最简单方法是使用BackgoundWorker。它专门用于处理大多数线程问题,例如从后台线程到GUI线程编组进度事件和完成通知。我已经用WinForms和WPF取得了巨大的成功。

我知道许多其他方法可以做到这一点,但他们都需要两到三次才能让我做对。