如何释放 C# 对象
直接方法
使用 using 块:
using 块会自动在代码块执行完毕后释放对象,无需手动调用 Dispose 方法。<code class="c#">using (FileStream fileStream = new FileStream("test.txt", FileMode.Open))
{
// 使用文件流
}</code>
显式调用 Dispose 方法:
显式调用 Dispose 方法可以手动释放对象。<code class="c#">FileStream fileStream = new FileStream("test.txt", FileMode.Open);
fileStream.Dispose();</code>间接方法
实现 IDisposable 接口:
实现 IDisposable 接口的类在对象超出作用域时自动调用 Dispose 方法。<code class="c#">class MyDisposableClass : IDisposable
{
public void Dispose()
{
// 释放资源
}
}</code>
使用 finalizers(终结器):
终结器是在对象超出作用域后自动调用的方法。但是,终结器在释放资源方面不可靠,应避免使用。<code class="c#">class MyDisposableClass
{
~MyDisposableClass()
{
// 释放资源
}
}</code> 