我有一台计算机充当WCF服务主机。客户端机器将运行多个客户端进程,每个客户端进程也在不同的端口(5601,5602等)上托管WCF服务。客户端进程将握手主机。一旦收到握手信号,主机将发回一些数据。按照主机上的单独方法的指示,客户端进程一个接一个地产生。但是,在启动多个实例后,我仍然收到以下异常:承载一个WCF服务被多个消费者使用,得到FaultException
由于内部错误,服务器无法处理请求。有关该错误的更多信息,请在服务器上打开IncludeExceptionDetailInFaults(来自ServiceBehaviorAttribute或来自配置行为),以便将异常信息发送回客户端,或根据Microsoft .NET Framework 3.0 SDK文档启用跟踪并检查服务器跟踪日志。
然而,当我在产卵之间添加延迟时,似乎没有问题。这会导致什么,我该如何解决?
在远程系统上产生立即尝试与主系统上的控制器服务握手的进程。
target.InitiateTestProcess(a);
//System.Threading.Thread.Sleep(1000);
target.InitiateTestProcess(b);
而对于握手
public void Handshake(Uri connectBack)
{
IWorkerContract client = ChannelFactory<IWorkerContract>.CreateChannel(
new BasicHttpBinding(),
new EndpointAddress(new Uri(connectBack, "Worker")));
client.PassUUT(clients[connectBack]);
}
如果需要额外的信息,我会尽量解决您的问题,以我的能力,请发表评论。