Silverlight UI线程阻塞
问题描述:
有人可以告诉我如何在UI线程和其他“工人”线程之间的Silverlight进程处理。Silverlight UI线程阻塞
我遇到的情况,我有通过视图模型更新视图几百个复杂的UI对象。每个项目都有自己的视图模型。
如果每个视图模型有一个特性,例如,所谓的IsSelected,它通过改变行为,背景颜色,我应该如何去进行更改,以最小的UI线程阻塞?
如果更新我的(几百个)的ViewModels,它阻止大约4秒钟的UI线程。我怎样才能确定什么是阻止?有更有效的方法来更新吗?
谢谢
答
确实比一次去做它更有效的方法。
非Silverlight的具体解决办法是空间这些更新除了与DispatcherTimer几毫秒延迟调用,因此该线程有一些“喘息空间”与执行路径进行。
但你也应该考虑一下你的架构,如果你处理数百台虚拟机的可能值得使用延迟加载和更新你的屏幕顺序,按重要性排序为你的听众。
查看此答案,以获得更多解释:https://stackoverflow.com/a/1710868/21217