我有一种情况,我正在寻找建议。WCF抓住异步异常
我有一个WCF服务,其中在一些方法中,我创建了一个对象,该对象又建立到服务器的套接字连接。我将这些连接对象“缓存”到我的服务类中“全局”的字典对象中。一旦建立了这些连接,就会有一个与其中每个连接相关的定时器,定时器回调会定期向服务器发送保持活动消息。
如果出于某种原因导致服务器连接断开,则会出现问题。当发生这种情况时,我得到一个未处理的异常,似乎杀死了WCF服务。
我希望有一种方法,我可以捕获这些计时器相关的异常,只需关闭套接字并从缓存中删除连接对象,但我不知道有一种方法。看起来,一旦我离开使用连接对象的方法,没有什么可以捕获异步异常。
你能发布有关异常,也许计时器代码发送保活消息,一些信息呢?你如何连接到服务器?你能向我们展示设置你连接的代码吗? – flayn 2011-04-25 21:18:56
您服务中的一些方法似乎很长寿并且长期运行 - 您确定这是一个很好的设计吗?这是单身服务吗? – 2011-04-26 10:01:49