当前位置: 代码迷 >> Web Service >> WCF多个用户同时调用server端同一个步骤卡死
  详细解决方案

WCF多个用户同时调用server端同一个步骤卡死

热度:666   发布时间:2014-02-27 01:51:41.0
WCF多个用户同时调用server端同一个方法卡死
服务端方法大概:
public ErrorStatus MethodName(type param1,type param2)
{
     lock(全局静态对象)
     {
          .
          .
          .
         return ErrorStatus.Error;
      }
}
连接方式:net.tcp

问题:当两个以上用户在Client端同时调用时,当“用户1”进入方法lock,"用户2"在排队等待,
“用户1”unlock后返回结果到‘用户1’的client,‘用户2’进入lock体执行,返回结果,结果未返回到"用户2"Client端,"用户2"Client端调用接口弹错"超时"非要用全局的静态变量来锁???一个客户端一个服务端实例不行?

很明显客户端等超时了嘛。
引用:
引用:非要用全局的静态变量来锁???一个客户端一个服务端实例不行?

很明显客户端等超时了嘛。

什么原因导致的超时


1. 检查Service config和Client Config确认各种超时时间长度
2. 自己做个StopWatch检查从一开始执行到结束有多长时间。 用户一还没执行完就超时了,楼主具体代码这么写的?
  相关解决方案