private void timer1_Tick (object sender , EventArgs e)
{
timer1.Enabled = false;
long i = DateTime.Now.Ticks;
i = i - StartTime;
DateTime time = new DateTime(i);
string str = "运行时间:" + time.ToString();
StatueLabelRunTime.Text = str;
timer1.Enabled = true;
}
很简单的一段代码,内存每秒8KB 增长
求指点
------解决思路----------------------
涨50M之后还会接着涨么?还是这么几条语句根本没有见到”涨50M内存的情况?
为了重复使用内存、优化内存使用,GC不会胡乱启动的垃圾清理工作的。所以如果你很快地执行许多计算工作(而没有让进程进入Idel状态),那么进程很快地涨几十M内存(比如20M内存)也是正常的。这正是.net程序比c++程序高明之处,它会经常动态地追加分配一大块内存空间以后重复使用,而并不纠结于“压缩内存空间”,绝不是“死抠”几M、几百K空间那种问题。