string SystemDate;
为什么我的程序运行时内存一直在增加,每过一会内存会增加20K左右,代码如下:string SystemTime;
string SystemWeek;
private void timer1_Tick(object sender, EventArgs e)
{
SystemDate = DateTime.Today.ToString("yyyy-MM-dd");
SystemTime = DateTime.Now.ToString("HH:mm:ss");
SystemWeek = DateTime.Today.DayOfWeek.ToString();
//状态栏添加时间显示
statusBar1.Panels[0].Text = SystemDate;
statusBar1.Panels[1].Text = SystemTime;
foreach (MessageDataSet.MessageDataTableRow messageRow in common.Message.MessageDataTable)
{
statusBar1.Panels[2].Text = messageRow.Id
}}
为什么我的程序运行时内存一直在增加,每过一会内存会增加20K左右,代码如下:string SystemTime;
string SystemWeek;
private void timer1_Tick(object sender, EventArgs e)
{
SystemDate = DateTime.Today.ToString("yyyy-MM-dd");
SystemTime = DateTime.Now.ToString("HH:mm:ss");
SystemWeek = DateTime.Today.DayOfWeek.ToString();
//状态栏添加时间显示
statusBar1.Panels[0].Text = SystemDate;
statusBar1.Panels[1].Text = SystemTime;
foreach (MessageDataSet.MessageDataTableRow messageRow in common.Message.MessageDataTable)
{
statusBar1.Panels[2].Text = messageRow.Id
}}
//获取日期
string[] weekNames=new string[]{"星期天","星期一","星期二","星期三","星期四","星期五","星期六"};
string datestr="今天是: "+DateTime.Now.Year.ToString() + "年" + DateTime.Now.Month.ToString()+"月" + DateTime.Now.Day.ToString()+"日 " + weekNames[(int)DateTime.Now.DayOfWeek]+" ";//获取时间
int hour=DateTime.Now.Hour;
int min=DateTime.Now.Minute;
int sec=DateTime.Now.Second;string timestr = (hour>9)?hour.ToString():"0"+hour.ToString() + ":" + (min>9)?min.ToString():"0" + min.ToString(); + ":" + (sec>9)?sec.ToString():"0"+sec.ToString();//更新状态栏
tatusBarPanel.Text= timestr;
foreach (MessageDataSet.MessageDataTableRow messageRow in common.Message.MessageDataTable)
{
statusBar1.Panels[2].Text = messageRow.Id
}
创建了个名为messageRow 的MessageDataSet.MessageDataTableRow 实例,这会在内存中开辟空间来存储的, 而且是每隔一段时间执行一次,内存会一直增加 直到程序退出
foreach (MessageDataSet.MessageDataTableRow messageRow in common.Message.MessageDataTable)
{
statusBar1.Panels[2].Text = messageRow.Id
messageRow=null;//没有试过 不知道行不行}}