我看到了以下引用:“析构函数不能保证被调用。” 这让我有点害怕。
它还指出,即使是 try finally 块也可能会被中断,从而导致内存泄漏。 它提供了一种解决方案,即将代码放置在 CER (受限执行区域) 中或从 CriticalFinalizerObject
派生。
我的问题是
- 使用
CriticalFinalizerObject
有什么权衡之处(如果有的话)? - 是否存在从
CriticalFinalizerObject
派生非常有用的情况? - 只有当我开始遇到内存泄漏时才应该担心使用它吗?