相关疑难解决方法(0)

.NET中的内存泄漏

在.NET中,我们可以通过哪些方式获得内存泄漏?

我知道两个:

  1. 未正确取消注册事件处理程序/代理.
  2. 不在Windows窗体中处理动态子控件:

例:

// Causes Leaks  
Label label = new Label();  
this.Controls.Add(label);  
this.Controls.Remove(label);  

// Correct Code  
Label label = new Label();  
this.Controls.Add(label);  
this.Controls.Remove(label);  
label.Dispose();
Run Code Online (Sandbox Code Playgroud)

更新:想法是列出不太明显的常见陷阱(如上所述).通常的想法是,由于垃圾收集器,内存泄漏不是一个大问题.不像以前那样在C++中.


很棒的讨论人员,但让我澄清......根据定义,如果.NET中的对象没有任何引用,它将在某个时间收集垃圾.所以这不是一种诱发内存泄漏的方法.

在托管环境中,如果你有一个你不知道的任何对象的意外引用,我认为它是一个内存泄漏(因此我的问题中的两个例子).

那么,这种内存泄漏可能发生的各种可能方式是什么?

.net optimization memory-leaks

20
推荐指数
4
解决办法
1万
查看次数

对于.net开发人员来说,进入移动开发的学习曲线是什么?

对于.net开发人员来说,进入移动开发的学习曲线是什么?

有多少不同的操作系统运行.net?

Windows mobile是否与windows ce相同?

.net compact-framework windows-mobile

13
推荐指数
1
解决办法
1649
查看次数

.NET最佳实践?

我知道这是一个广泛的话题,但我对.NET的所谓最佳实践感兴趣,尽管我正在寻找不那么明显的主题,不像"用作代替转换".
让我们看看我可以从Stack Overflow用户那里学到什么有趣的东西.

.net

4
推荐指数
2
解决办法
4955
查看次数