微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Silverlight WCF仅代理异步?

为什么Silerlight生成的WCF代理类仅提供异步调用

有些情况下我并不真正需要异步模式(例如在BackgroundWorker中)

编辑:有时我需要处理两个WCF调用的结果.如果我可以等待(应用程序的业务允许)两个调用结束然后处理它会更简单..但是没有….异步! :P

解决方法

实际上有一个技术上的原因,你不能进行同步调用,至少从’主’浏览器线程,这是浏览器调用同一线程上的所有插件API调用,所以如果SL要阻止该线程等待网络回调,网络回调无法通过,应用程序将死锁.也就是说,如果从不同的线程启动,同步API将正常工作 – 即,如果应用程序首先执行QueueUserWorkItem以脱离浏览器线程 – 但我们认为提供同步选项并且仅使用它会令人困惑有时候工作.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐