RE:Cuando usar flush, close, dispose (clase stream
ps mira... según en MSDN...
Stream.Flush()
Al sobrescribir en una clase derivada, borra todos los búferes de esta secuencia y hace que todos los datos almacenados en el búfer se escriban en el dispositivo subyacente.
(Si alguien ntndio que nos xpliq xq mas nrredado no puede estar...)
Yo digo: "Sin comentarios"
--------------------------------------------------------------------------------------------------------------------------
Stream.Close()
Cierra la secuencia actual y libera todos los recursos (como sockets e identificadores de archivo) asociados a ésta.
Yo digo: "Independientemente de lo que diga el MSDN, un uso practico puede ser que... una ves que hayas escrito tus datos, uses el método close para asegurarte que:
1. Los datos se haya escrito completamente y correctamente
2. Que tengas disponible archivo que recien creaste (o lo q' sea hayas creado) para que lo ocupes en otro proceso|método o lo que gustes."
--------------------------------------------------------------------------------------------------------------------------
Stream.Dispose()
Sobrecargado. Libera todos los recursos utilizados por el objeto Stream.
Yo digo: "Aunque como bien dices, puede reemplazar a los dos métodos anteriores, podría decir que para efectos practicos yo uso el Dispose cuando ya no necesito más el recurso, en éste caso el Stream"
Espero te haya sido de ayuda...
Buen dia...