Закрытие потока в функции — плохая идея?

Сегодня я написал код, и он был изменен другим разработчиком, который сказал, что он более безопасен. Я не уверен, что это правильно, так как я не вижу преимущества того, что было сделано, вот несколько примеров кода

public byte[] ReadFile(Stream stream)
{
    byte[] result = null;

    try
    {
       // do something with stream
       result = <result of operation>
    }
    finally
    {
        stream.Close();
    }

    return result;
}

это было изменено на

public byte[] ReadFile(Stream stream)
{
    byte[] result = null;

    // do something with stream
    result = <result of operation>

    return result;
}

Я совершенно новичок в С#, если поток не будет закрыт, когда вы закончите с ним ?

7
задан 5 April 2012 в 20:17
поделиться