|
1
2
定义或不定义变量并不影响是否需要处理对象。
如果实现
你可以用
|
|
|
2
1
首先,dispose方法允许类的开发人员(在本例中
通常,如果类实现
这个
如您所见,此模式意味着无论
本质上,它是一个C#助手,因此您不必编写 安全 上述代码确保一次性物品的处置。 因为有明显的好处,问题应该是“什么时候 不应该 您可以使用“”。 |
|
3
1
同样的事情 不 在第二个示例中发生,就像在第一个示例中发生一样。在第二个示例中,StreamReader将成为 有资格的 因为您没有将垃圾收集存储在变量中(因此它将超出范围),所以在该行执行之后立即执行垃圾收集。这里的关键词是“合格”-无法保证对象何时实际清理。因此,第二行代码将导致对文件的锁定被“保留”,直到垃圾收集器开始对StreamReader进行垃圾收集。
另一方面,如果你打电话
|
|
|
A B · C#Excel自动调整列避免长文本时出错 1 年前 |
|
|
Megrez7 · C#ToArray转换合并为一行,导致数组元素更改 1 年前 |
|
Aycon · 在工厂方法中释放部分创建的对象的正确方法是什么? 1 年前 |
|
|
Sei · Avalonia/WPF将路由器传递到控制模板 1 年前 |