gpt4 book ai didi

java - System.gc() 与 GC.Collect()

转载 作者:行者123 更新时间:2023-11-30 06:12:25 29 4
gpt4 key购买 nike

在 Java 中,我们可以使用 System.gc() 方法来建议 GC。今天我从this link开始了解C#中的GC.Collect()方法。 . 但我对解释有些不清楚。

第一行。

Forces an immediate garbage collection from generation 0 through a specified generation.

还有另一行。

Use this method to try to reclaim memory that is inaccessible.

在我的简单测试代码中,GC.Collect() 立即起作用。

Console.WriteLine("abcdefg");
GC.Collect(2);
GC.Collect(2);
Console.WriteLine(GC.GetGeneration("abcdefg"));

GC.Collect() 总是立即强制执行 GC?

或者只是像 Java 中的建议?

这不是关于“我想在 C# 中强制执行 GC”的问题,我只是想知道它是如何工作的。

最佳答案

GC.Collect() 立即强制执行 GC。在 GC 完成之前,您的线程将被阻塞。

关于“尝试回收内存”部分 - 如果对象实现了 Finalize 方法,则在回收内存之前必须运行终结器。垃圾收集器会安排终结器运行,对象将至少保留在内存中直到下一次 GC。

关于java - System.gc() 与 GC.Collect(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32925883/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com