C# &引用;“线程正在中止”;在WCF服务呼叫中
在我的程序中,有一个包含wcf客户机的aspx页面,它调用位于同一服务器上的wcf服务 当我的wcf客户端调用生产服务器上IIS中托管的wcf服务时,我会遇到此异常 示例消息:C# &引用;“线程正在中止”;在WCF服务呼叫中,c#,asp.net,ajax,wcf,prtg,C#,Asp.net,Ajax,Wcf,Prtg,在我的程序中,有一个包含wcf客户机的aspx页面,它调用位于同一服务器上的wcf服务 当我的wcf客户端调用生产服务器上IIS中托管的wcf服务时,我会遇到此异常 示例消息:线程被中止。 堆栈外: 在System.Net.UnsafeNclNativeMethods.OSSOCK.recv(IntPtr socketHandle, 字节*pinnedBuffer,Int32 len,SocketFlags SocketFlags)位于 System.Net.Socket.Socket.Rece
线程被中止。
堆栈外:
在System.Net.UnsafeNclNativeMethods.OSSOCK.recv(IntPtr socketHandle,
字节*pinnedBuffer,Int32 len,SocketFlags SocketFlags)位于
System.Net.Socket.Socket.Receive(字节[]缓冲区,Int32偏移量,Int32
尺寸、SocketFlags(SocketFlags、SocketError和errorCode)
System.Net.Sockets.NetworkStream.Read(字节[]缓冲区,Int32偏移量,
System.Net.PooledStream.Read(字节[]缓冲区,Int32
偏移量,Int32大小)在System.Net.Connection.SyncRead(HttpWebRequest)处
请求,布尔userRetrievedStream,布尔probeRead)位于
System.Net.ConnectStream.ProcessWriteCallDone(ConnectionReturnResult
返回结果)在
System.Net.ConnectStream.CallDone(ConnectionReturnResult)
在System.Net.ConnectStream.ResubmitWrite(ConnectStream oldStream,
布尔值(写入)在
System.Net.HttpWebRequest.EndWriteHeaders_Part2()位于
位于的System.Net.HttpWebRequest.EndWriteHeaders(布尔异步)
System.Net.HttpWebRequest.WriteHeadersCallback(WebExceptionStatus
错误状态,连接流,布尔异步)
System.Net.ConnectStream.WriteHeaders(布尔异步)位于
System.Net.HttpWebRequest.EndSubmitRequest()位于
System.Net.HttpWebRequest.GetResponse()位于
System.ServiceModel.Channels.HttpChannelFactory.HttpRequestChannel.HttpChannelRequest.WaitForReply(TimeSpan
超时)在
System.ServiceModel.Channels.RequestChannel.Request(消息,
时间跨度(超时)在
System.ServiceModel.Dispatcher.RequestChannelBinder.Request(消息
消息,TimeSpan超时)位于
System.ServiceModel.Channel.ServiceChannel.Call(字符串操作,
布尔单向,ProxyOperationRuntime操作,对象[]ins,
对象[]输出,TimeSpan超时)位于
System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage
方法调用,ProxyOperationRuntime操作)在
System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage
信息)在
System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData&
msgData,Int32类型)at
StationService.IStationService.GetCurrentStationTrack(字符串
stationId)在
StationService.StationServiceClient.GetCurrentStationTrack(字符串
stationId)位于GetSongJS.getMarq(字符串放射性标识符)
我使用PRTG Ipmonitor,它对“请求电流”传感器的请求太多。
我的网站在浏览器中变得可用。
如果删除此调用服务的页面,则一切正常。在客户端代理调用后是否有
响应。重定向(url)
调用?单参数重载将终止当前线程,这将导致日志中显示许多此类错误。有时页面已经完成工作,但没有发生,但切换到另一个更繁忙的环境通常是一个触发因素。听起来好像您没有关闭WCF客户端
我认为正在发生的是:
- 用户调用aspx页面
- aspx页面调用该服务
- aspx页面返回给用户
- 服务客户端未关闭,因此请求处于打开状态,当前请求数很高
- 最终,您可以打开最大数量的请求
- 当该页未获得可用连接时,该页将等待空闲连接超时
- 然后,您将从超时中获得一个线程中止异常