我的以下代码会不会存在内存泄露?
private void timer1_Tick(object sender, EventArgs e){
i++;
this.listBox1.Items.Add(DateTime.Now.ToString());
this.listBox1.SelectedIndex = listBox1.Items.Count - 1;
if (listBox1.Items.Count > 100)
{
listBox1.Items.Clear();
listBox1.Dispose();s
}
this.textBox1.Text = i.ToString();
}
timer1定时器是1秒钟执行10次! WinCE 内存泄露 ListBox C# --------------------编程问答-------------------- 我先自己顶一下 希望高手给予指点啊! --------------------编程问答-------------------- 什么叫泄露?什么是内存泄露? --------------------编程问答-------------------- 到.net下,基本不用考虑内存问题,我是这么看待的,除非在环境受限的情况下。 --------------------编程问答-------------------- 没有吧,没看出来 --------------------编程问答-------------------- 同意。
lz请先给说明一下,你认为.net中什么代码会产生内存泄露呢?说明了这个,咱们再来讨论你的代码。 --------------------编程问答--------------------
++1 --------------------编程问答--------------------
托管资源的处理是由GC自动执行的,基本不用考虑内存泄露的问题
而非托管资源必须显式地释放,否则就可能造成泄露 --------------------编程问答-------------------- 楼主还是先去了解一下.net的托管资源和非托管资源吧
再对照自己的代码很容易找到答案
这样获得的答案,肯定要比单纯的得到“有”或者“没有”这样笼统的答案有效 --------------------编程问答-------------------- 嗯 谢谢大家的回答! --------------------编程问答--------------------
您好 我是在wince下的智能开发 现在我的程序 只要长时间运行 一般i=130000左右 系统就卡死 什么都不能操作 但代码调试显示 代码都是正常的 定时器也在正常工作?这是什么原因呢? --------------------编程问答--------------------
是不是其它问题,代码看不出有多大问题 --------------------编程问答--------------------
但就这么多代码 wince上长时间运行 就卡死 “this.listBox1.SelectedIndex = listBox1.Items.Count - 1;”这句话长时间运行 会不会有问题?
--------------------编程问答-------------------- 我只觉得你的代码会抛异常。
listBox1都Dispose了,下次再调用只会出现“不能访问已释放的对象”的异常。
建议你先搞清楚.net的垃圾回收机制。
补充:.NET技术 , C#