|
其實吧,內存泄露一直是個令人頭疼的問題,在帶有GC的語言中這個情況得到了很大的好轉,但是仍然可能會有問題。
一、什么是內存泄露(memory leak)?
內存泄露不是指內存壞了,也不是指內存沒插穩漏出來了,簡單來說,內存泄露就是在你期待的時間內你程序所占用的內存沒有按照你想象中的那樣被釋放。
因此什么是你期待的時間呢?明白這點很重要。如果一個對象占用內存的時間和包含這個對象的程序一樣長,但是你并不期望是這樣。那么就可以認為是內存泄露了。用具體例子來說明如下:
class Button { public void OnClick(object sender, EventArgs e) { ... }}class Program { static event EventHandler ButtonClick; static void Main(string[] args) { Button button = new Button(); ButtonClick += button.OnClick; }}
NET技術:談談.NET中常見的內存泄露問題——GC、委托事件和弱引用,轉載需保留來源!
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。