当前位置: 首页 > 编程语言 > C#

在一天24小时运行的应用程序上使用GC.Collect是否明智?分享

时间:2023-04-10 18:55:56 C#

在24小时运行的应用程序上使用GC.Collect是否明智?我们的应用程序每周7天、每天24小时运行。有时CPU达到100%,然后又回到80%。与内存相同。几个小时后手动调用GC.Collect还是自动离开是明智的。我们正在使用C#2010、SQL2008和FluentNhiberanet。这是一个桌面应用程序。我不会“每隔几个小时”或“当RAM使用率变高时”称GC.Collect()为智能,但当您处于可以获得更多信息的位置时,我会称其为明智之举。与GC相比,某些exmaplesGC是一种高度优化的代码安静且非常智能,但它只能处理它拥有的信息。手动调用GC.Collect从来都不是一个好主意,因为你应该调查为什么你的应用程序会获得如此多的资源,而不是每次你将要达到100%时都清理它们看看下面我认为它真的值得阅读第5页章节-提高托管代码性能通常框架本身会在需要时处理调用GC,您可以尝试运行它一天而不自己调用它如果您持有不必要的引用或忘记取消订阅GC.Collect不会神奇地解决这个问题。框架本身会不时收集垃圾,所以我不相信每隔几个小时调用GC.Collect会改变什么。简短的回答:没有。垃圾收集器不是您想要进入的区域,除非您必须这样做。通常.net运行时会在需要时很好地调用它。如果你自己调用它只是额外的开销。我不会调用GC.Collect-除了此处和此处描述的例外情况。如果您有任何24/7全天候运行的应用程序,那么我建议如下:以上是C#学习教程:在一天24小时运行的应用程序上使用GC.Collect是否明智?如果所有分享的内容对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处: