用于替换INVOKE的方法



是否有办法使用InvokeInvokeRequired方法在其他线程中创建的对象?有没有一种更直接、内存更少的方法?也许是状态机或线程控制?

我是否在浪费时间担心这个方法的资源使用?

我使用这个调用方法:http://tech.xster.net/tips/invoke-ui-changes-across-threads-on-vb-net/

我正在使用VB。. NET VS 2012

这完全符合我医生的建议:"如果疼就不要做"。

有几个。net模式强调将线程代码与需要在UI上运行的代码分开。BackgroundWorker已经可用很长时间了,注意它的ProgressChanged和RunWorkerCompleted事件是如何在UI线程上运行的。这是一个无需调用自己就可以更新UI的好地方。

. net 4 Task类提供给你TaskScheduler.FromCurrentSynchronizationContext()方法。这是链接在UI线程上运行的任务的好方法,特别用于用以前异步运行的任务的结果更新UI。VS2012提供了Async和Await关键字的另一个武器。这些都是避免编写你不想写的代码的好方法

相关内容

  • 没有找到相关文章

最新更新