.net垃圾收集不运行的条件是什么?高cpu使用率是否会阻止垃圾收集的运行?
我正在使用visual 2010 .net 4进行一个非常大的项目,我添加了项目的新部分,现在正在对其进行性能测试。在测试期间,我发现当我将客户端置于高负载时,几乎所有时间都是100%的cpu,内存表现得就像有泄漏一样。经过多次测试,我没有发现任何东西,我使用了ANTS分析器,并发现比起我每5分钟拍摄一次快照,内存的行为与往常一样。ANTS强制垃圾收集工作,所以我提出了一个问题,.net垃圾收集在不中断应用程序运行的情况下在高cpu下不起作用吗?
发布于 2013-11-18 04:26:17
检查完问题后,我得出结论,高CPU导致GC无法正常工作。我通过每隔几分钟调用GC来测试它,内存仍然很低(在程序的正常运行中)。之后,我将程序的主要瓶颈分叉到几个核心上。在c#和.net中,cpu宕机了,内存又像往常一样正常工作--在恒定的范围内上下波动。
https://stackoverflow.com/questions/19720853
复制相似问题