我了解需要使用 Invoke/BeginInvoke 从工作线程调用函数或过程,这些函数或过程会更改属于 UI 线程的组件...
我的问题是 - 是否有充分的理由去检查 InvokeRequired?假设在不同情况下可以从工作线程或 UI 线程调用事件处理程序。让 UI 线程调用它自己最终会执行的方法上的 Invoke 是否有任何后果?
说...
Private Sub SomeProcedure() Handles event1, event2, event3
Me.Invoke(New delegateSomeProc(Address of SomeProc))
EndSub
现在,假设 event1 从 UI 线程触发,但事件 2 和/或 3 从其他线程触发......无论如何, event1 调用调用是否有任何危险,即使它不必这样做?是不是效率有点低?