C# 中手動觸發垃圾回收
面試中的一個常見問題集中在 C# 中強制垃圾回收的可能性。雖然通常不鼓勵,但在某些情況下可能需要直接幹預。
以下程式碼片段示範如何明確啟動垃圾收集:
<code class="language-csharp">GC.Collect(); GC.WaitForPendingFinalizers();</code>
只呼叫 GC.Collect()
是不夠的。 GC.WaitForPendingFinalizers()
對於確保所有掛起的終結器在程式碼恢復之前完成至關重要。 終結器可能會保留資源以防止垃圾收集,直到執行為止。 因此,這兩個呼叫都是完整清理所必需的。
以上是C# 可以強制垃圾回收嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!