0

我有以下场景:

WCF Windows 服务 1

  • 有工作要完成时调用 WCF 服务 2
  • 使用结果更新数据库

WCF Windows 服务 2

  • 使用托管可扩展性框架 (MEF) 在新的应用程序域中动态组合部件(插件)。

  • 然后插件创建一个 Watin 实例(开源 .net 测试框架),该实例又创建一个新的 IE 进程,执行一些 WWW 导航,执行一些屏幕抓取,截取屏幕截图

  • 一切都返回给调用者。

我在 WCF Windows 服务 2 中看到逐渐的内存泄漏,并且必须每隔几天重新启动一次。使用 perfmon 在我的开发环境中(孤立地)分析了服务后,我似乎看不到内存泄漏。我曾尝试使用.Net Memory Profiler,但似乎也没有得到任何结论。IDispose 已实现并被调用。

我开始认为是两个 WCF Windows 服务之间的交互可能会保留对象引用并阻止 IDispose 被调用。有没有其他人看到过这种行为?还是我在叫错树?

在任何人提到之前......我明白正在做的事情很疯狂......

4

0 回答 0