using ステートメントでメモリ ストリームを使用する場合、close を呼び出す必要がありますか? たとえば、ここで ms.Close() が必要ですか?
using (MemoryStream ms = new MemoryStream(byteArray))
{
// stuff
ms.Close();
}
using ステートメントでメモリ ストリームを使用する場合、close を呼び出す必要がありますか? たとえば、ここで ms.Close() が必要ですか?
using (MemoryStream ms = new MemoryStream(byteArray))
{
// stuff
ms.Close();
}
いいえ、ちがいます。
using
が呼び出されることを保証しDispose()
、次にメソッドを呼び出しますClose()
。
すべての種類のストリームがusing
ステートメントによって閉じられていると想定できます。
MSDNから:
StreamWriter などのアンマネージ リソースにアクセスするオブジェクトを使用する場合は、using ステートメントを使用してインスタンスを作成することをお勧めします。using ステートメントは、ストリームを自動的に閉じ、オブジェクトを使用しているコードが完了すると、そのオブジェクトで Dispose を呼び出します。
using ステートメントでメモリ ストリームを使用する場合、close を呼び出す必要がありますか?
いいえ、必要ありません。.Dispose()
自動的に呼び出されるメソッドによって呼び出されます。
using (MemoryStream ms = new MemoryStream(byteArray))
{
// stuff
}