关于WCF同一客户端,多个请求,发生等待的问题
WCF中,同一个客户端,向WCF发送一个耗时较长的A请求,而后,再发送一个耗时较短的B请求。这样,造成的一个结果就是,B请求总是等待A请求结束之后再执行。请问各位大牛,有没有什么方法,或什么配置,可以使这两个请求异步执行,不发生不必要的等待?
多谢啊,各位老大!! WCF 异步 --------------------编程问答-------------------- 实例化wcf服务的多个代理对象去操作, 不要用一个对象去操作 --------------------编程问答-------------------- ServiceBehivior 不要设置 Singleton 并且打开重入 --------------------编程问答-------------------- [ServiceBehavior(InstanceContextMode = InstanceContextMode.PerSession, ConcurrencyMode = ConcurrencyMode.Reentrant)]
--------------------编程问答-------------------- 服务端做负载均衡 --------------------编程问答--------------------
代理对象怎么及时释放,代理对象超过一定的数目之后怎么弄?还是要报等待的错误的! --------------------编程问答--------------------
代理对象每次交互结束后,你可以手工调用关闭 --------------------编程问答-------------------- 建议你去看看WCF实例上下文的单调模式、单例模式、会话模式,写个小的Demo比较一下 --------------------编程问答-------------------- 可以使用同一个客户端对象分别调用,只要在两个线程中调用即可。 --------------------编程问答-------------------- 我印象中,WCF在.net3.5以后,是支持 xxxxxAsync 这样名称的异步方法的。
如果没有,那么可以自己多写两行代码在线程中执行,例如写
var client = new MyService.Method1Client();
ThreadPool.QueueUserWorkItem(h =>
{
client.A();
}
ThreadPool.QueueUserWorkItem(h =>
{
client.B();
}
补充:.NET技术 , Web Services