我的应用程序连接到 MySQL,但有时需要一段时间并且 GUI 被卡住。我想在另一个线程上进行连接,我想 BeginInvoke 是最好的方法(我知道后台 worker ,但我想学习这个)。我研究了 MSDN 页面,但我不明白什么是最好的使用方法? 他们还说,当调用 async.method 的线程不需要知道结果时,您只能使用回调......我不明白,因为我相信我可以在另一个线程中设置一些变量来“传递”结果出色地。 我只需要在建立连接时不卡住 GUI。感谢您的建议。
最佳答案
到目前为止,处理它的最简单方法是使用 BackgoundWorker。它专门设计用于处理大多数线程问题,例如从后台线程到 GUI 线程的编码进度事件和完成通知。我已将它用于 WinForms 和 WPF,并取得了巨大成功。
我知道很多其他方法可以做到这一点,但我都需要尝试两三次才能正确。
关于c# - 哪个异步调用用于数据库连接和仍然响应的 GUI?--,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2843032/