Sam*_*yan 4 silverlight multithreading backgroundworker wcf-ria-services
我试图从非UI线程进行RIA服务调用.
我通过打开新线程和后台工作程序进行了调用,但是对于这两种情况,回调都在UI线程上运行.
是否可以在调用者线程上执行回调,而不是UI?
谢谢
TL;博士
WCF RIA是为了在UI线程上工作而构建的
WCF RIA主要用于UI线程.这显然有很多优点和缺点; 在你的情况下大多是利弊 我无法找到这个设计的确切文档,但是,通过肯定UI线程来回答关于该主题的大多数问题.
Domain Context Load和SubmitChanges以异步方式执行.他们从线程池中获取一个线程,对服务器进行必要的调用,当这些调用完成后,工作会自动编组回UI线程以修改实体集合,然后更新UI(可能通过INotificationChanged).
如果您使用WCF来获取自己的数据,您可以在任何您喜欢的线程上执行此操作.调用完成后,您必须编写(或借用)代码以更新UI线程上的UI以避免跨线程异常.
IMO,WCF RIA的主要优点是提供简单问题的简单解决方案:
缺点是难以解决的难题:
| 归档时间: |
|
| 查看次数: |
622 次 |
| 最近记录: |