我正在编写一个Windows Forms应用程序,大量使用BackgroundWorkers,并且有一个问题令我担心。以下是一个示例情况:
好吧,我的问题是:BackgroundWorker.RunWorkerCompleted事件处理程序是否有可能中断Button.Click事件处理程序的执行?
答案 0 :(得分:0)
DoWork
完成后,将在启动RunWorkerCompleted
的线程上调用BackgroundWorker
。让我们说它是主线程。这意味着它将在主线程的消息队列中发布消息。如果主线程当前正在处理消息(例如,Button.Click事件),则RunWorkerCompleted
将位于线程的消息队列中,直到它到达为止。含义 - 它不会中断/碰撞按钮事件处理程序。