读书人

Dispose 的影响力,该怎么解决

发布时间: 2012-04-09 13:41:25 作者: rapoo

Dispose 的影响力
//\Dispose 的影响力\//

C# code
FileStream fs = new FileStream(@"D:\My File.dat", FileMode.Open);StreamWriter sw = new StreamWriter(fs);sw.WriteLine("It is just a test");sw.Flush();sw.Close();fs.Close();fs.Dispose();//如果我忘写了这一行, 会怎样? 内存会泄漏吗? 会死机吗? 难道.net 内部机制 不会 主动Dispose ?


用请大侠们说说,谢谢。

[解决办法]
会不会内存泄漏取决于这个对象是否使用了非托管的内存。
一般来说,系统内置的类都有防呆的设计,比如你说的FileStream,在解析函数中会调用Dispose的。
[解决办法]
探讨
//\Dispose 的影响力\//

C# code
FileStream fs = new FileStream(@"D:\My File.dat", FileMode.Open);
StreamWriter sw = new StreamWriter(fs);
sw.WriteLine("It is just a test");
sw.Flush();
sw.Close();
fs.C……

[解决办法]
一般不用Dispose,直接Close就行了。

也不会先Close,再Dispose,这其实是多余的写法。

读书人网 >C#

热点推荐