0

需要回答的问题:

  1. 客户端ServicedComponent的终结器是调用ServicedComponent.DisposeObject还是Dispose?

  2. com 服务器中的破坏(内存释放)应该如何发生在客户端的使用中?

  3. 基本上 - 我们在 COM 服务器的进程大小(内存)上达到了 2 gig 限制,因为内存没有被释放 - 是显式调用 Dispose 还是在客户端使用 using 语句的解决方案?

4

1 回答 1

1

您绝对应该在客户端DisposeServicedComponent.DisposeObject客户端调用。微软说“最好使用 Dispose 设计模式而不是 DisposeObject。”

COM+ 中发生的确切情况取决于以下几点:

  • 应用程序是库还是服务器应用程序
  • 是否使用对象池
  • 是否正在使用 JIT

如果呼叫不在进程中,那么租用时间可能会发挥作用。 了解 .NET 中的企业服务 (COM+)是我读过的最好的 COM+ 文章之一,但由于它是 2002 年写的,我想知道它是否仍然 100% 准确。

于 2010-06-17T04:54:19.960 回答