在.net中使用Invoke()有什么用?

Gol*_*old 5 .net c# invoke

我找到了这段代码:

this.Invoke(new EventHandler(EventGetSum));
Run Code Online (Sandbox Code Playgroud)

这与写作不一样:

EventGetSum();
Run Code Online (Sandbox Code Playgroud)

这有什么用?

Jon*_*eet 13

如果你写EventGetSum(),立即调用 EventGetSum方法.

如果你编写new EventHandler(EventGetSum)它会创建一个委托,它将调用EventGetSum(反过来).

调用Control.Invoke调用从负责控制UI线程给定的委托.这是必要的,因为您不能从任意线程访问UI元素.


Tim*_*mbo 5

它执行EventGetSum窗口this所属的线程中的方法.