如何清除以前的BeginInvoke

时间:2019-04-17 20:21:12

标签: c# winforms event-handling invoke begininvoke

如何在添加新的Begin调用之前清除ui控件上先前尚未执行的BeginInvoke。

在WinForm应用程序中,我有一个状态栏,该栏经常从后台进程中更新,但是如果使用Invoke,则会降低后台进程的性能,因此我想使用begin invoke,但是我希望状态与最后一次BeginInvoke。因此,当我调用新的BeginInvoke时,我想清除以前尚未执行的BeginInvoke。

有什么办法吗?

1 个答案:

答案 0 :(得分:0)

如果您如此频繁地调用BeginInvoke,以使您的UI线程无法成功退出队列,那么您应该考虑降低调用BeginInvoke的频率,或者更改更新UI的方法(计时器?)。也同意Lasse的评论。