如果特定条件失败或对象部分构造,我能否知道如何从 C# .NET 强制解除分配 COM 服务器对象?
问题是我使用的是使用 DCOM 机制的 COM 服务器;在最坏的情况下,当对象没有完全创建并且我因为失败而退出应用程序时,COM 对象仍在内存中(显示在 COM+ 应用程序组件服务中)。如果超出某些限制,则会导致内存泄漏和崩溃。但是,如果它的故障数量是可控的,它会在某个时间点后被删除。
示例:- Calculator.App objApp = new Calculator.App();
if( !obj.CanBeUsed() ) { //如何释放 COM 对象 objApp }
注意:Garbase 收集器使用 GC.Collect() 方法强制从堆内存中取消分配。我是否可以使用这种方法或 .NET 框架为这种特殊情况提供任何其他解决方案?