BinaryReader.Dispose (bool disposing) tworzy lokalne odwołanie do strumienia. Czemu?
Znalazłem nietypową próbkę w kodzie FCL.
Jest to metoda w System.IO.BinaryReader:
protected virtual void Dispose(bool disposing) {
if (disposing) {
Stream copyOfStream = m_stream;
m_stream = null;
if (copyOfStream != null && !m_leaveOpen)
copyOfStream.Close();
}
m_stream = null;
m_buffer = null;
m_decoder = null;
m_charBytes = null;
m_singleChar = null;
m_charBuffer = null;
}
Jaki wpływ na logikę wykonania ma „copyOfStream”?