GC.Collect()使用次数频繁对系统的影响,谢谢指点。。(不是舍不得给分,只有这30了)

张游 2003-12-18 02:43:15
在timer控件事件里使用GC.Collect()[每0.5秒调用一次],是否会导致系统性能下降?对CPU占用率还是内存占用率有影响?谢谢
...全文
723 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
张游 2003-12-18
  • 打赏
  • 举报
回复
可怜单位电脑全是WIN98,2000和XP下都正常的程序到98下一会就跳出一个系统错误(上下来回拖动listview控件(Detail样式,数据量大)的滚动条时),都是用GC.Collect()解决的。

哎,98什么时候能灭亡啊
dahuzizyd 2003-12-18
  • 打赏
  • 举报
回复
帮助里的:
垃圾回收 GC 类提供 GC.Collect 方法,您可以使用该方法让应用程序在一定程度上直接控制垃圾回收器。通常情况下,您应该避免调用任何回收方法,让垃圾回收器独立运行。在大多数情况下,垃圾回收器在确定执行回收的最佳时机方面更有优势。但是,在某些不常发生的情况下,强制回收可以提高应用程序的性能。当应用程序代码中某个确定的点上使用的内存量大量减少时,在这种情况下使用 GC.Collect 方法可能比较合适。例如,应用程序可能使用引用大量非托管资源的文档。当您的应用程序关闭该文档时,您完全知道已经不再需要文档曾使用的资源了。出于性能的原因,一次全部释放这些资源很有意义。有关更多信息,请参见 GC.Collect 方法。

在垃圾回收器执行回收之前,它会挂起当前正在执行的所有线程。如果不必要地多次调用 GC.Collect,这可能会造成性能问题。您还应该注意不要将调用 GC.Collect 的代码放置在程序中用户可以经常调用的点上。这可能会削弱垃圾回收器中优化引擎的作用,而垃圾回收器可以确定运行垃圾回收的最佳时间。

acai 2003-12-18
  • 打赏
  • 举报
回复
ms-help://MS.MSDNQTR.2003FEB.2052/cpguide/html/cpconprogrammingessentialsforgarbagecollection.htm
rottenapple 2003-12-18
  • 打赏
  • 举报
回复
http://www.microsoft.com/china/community/program/originalarticles/TechDoc/GCview.mspx

你看看这篇文章把

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧