当我使用模式时,是否需要调用stream close方法

时间:2010-12-28 10:54:34

标签: c# .net

使用模式时,是否需要调用stream close方法?

6 个答案:

答案 0 :(得分:5)

不,你不需要(尽管明确无害)。如果您正在处理流,它也会关闭它...但是,您可能仍然希望早于关闭它而不是处置,如果是这种情况仍然调用.Close()。< / p>

答案 1 :(得分:1)

如果是Stream - 否。Dispose方法会调用Close

答案 2 :(得分:1)

没有using会调用dispose,c#中的所有已知流都处于关闭状态,但是如果是你自己的流而你没有实现它是的,你应该这样做。

答案 3 :(得分:0)

对于连接,没有。对于读者,是的。

答案 4 :(得分:0)

Dispose

System.IO.Stream方法的反汇编内容
public void Dispose()
{
    this.Close();
}

所以答案是否定的。

答案 5 :(得分:0)

不,实际上,using等于以下内容:

using(Stream stream = new Stream()){
……
}

Stream stream = null
try
{
 stream = new Stream();
}
finally
{
   stream.Dispose();
}

你可以查找IL。