C# 中手动触发垃圾回收
面试中的一个常见问题集中在 C# 中强制垃圾回收的可能性。虽然通常不鼓励,但在某些情况下可能需要直接干预。
以下代码片段演示了如何显式启动垃圾收集:
<code class="language-csharp">GC.Collect(); GC.WaitForPendingFinalizers();</code>
仅调用 GC.Collect()
是不够的。 GC.WaitForPendingFinalizers()
对于确保所有挂起的终结器在代码恢复之前完成至关重要。 终结器可能会保留资源以防止垃圾收集,直到执行为止。 因此,这两个调用都是完整清理所必需的。
以上是C# 可以强制垃圾回收吗?的详细内容。更多信息请关注PHP中文网其他相关文章!