Rob*_*ler 2 .net c# dispose unmanaged textreader
当我看到这篇博客文章时,我正在使用XML来编写和反序列化类对象,该博客文章介绍了如何使用隔离存储区在Windows Phone 7上执行此操作.Windows Phone 7是我正在开发的平台:
在此示例中,他显式调用Dispose()的唯一对象是TextReader对象.我在MSDN上查找了TextReader对象,发现文档说这个:
释放TextReader使用的非托管资源,并可以选择释放托管资源.
所以我假设他这样做的原因是立即释放TextReader对象获取的非托管资源.如果不是因为他的博客文章,我不会想到这样做.显然我不想开始在视线中的每个对象上调用Dispose(),所以至少在调查特定对象何时应该调用Dispose()时,有什么好的经验法则?是否有一些指南或某个列表,至少是需要这种特殊处理的流行.NET对象?
显然我不想开始在每个对象上调用Dispose()
错误.
通常,任何实现的对象IDisposable应在完成后立即处理,通常使用该using语句.
大多数没有非托管资源的对象都没有实现IDisposable(并且没有Dispose()方法),因此您无需担心.
唯一的例外是实现基类IDisposable中的情况下,一些派生出来的系统有什么处置(如IEnumerator,Component或TextReader).
但是,并不总是很明显需要处理哪些具体实现(并且可能随时更改),因此无论如何都应该始终处置它们.
| 归档时间: |
|
| 查看次数: |
1309 次 |
| 最近记录: |