A ver si alguien me puede aclarar esto.
class Log
{
private StreamWriter sw;
public Log() {sw=new StreamWriter("log.txt");}
public Write(string s) {sw.WriteLine(s);}
~Log() {sw.WriteLine("FIN LOG");sw.Close();}
}
La clase es, evidentemente, mucho más compleja, pero este esqueleto sirve.
Básicamente, el problema consiste en que a la hora de ser llamado el
destructor, el StreamWriter ha sido cerrado.
Me le releído como 10 veces todo el tema de los IDisposable, etc, y de hecho
la he ampliado con el interface IDisposable y he implementado un interface
Dispose() público y otro protegido y virtual (Dispose(bool) ), siguiendo el
ejemplo, pero dentro de cualquier dispose o del destructor, el sw ya ha sido
cerrado.
¿Dónde la cago?
Gracias de antemano.
Amo a la Humanidad, lo que me revienta es la gente.
Mafalda.
Leer las respuestas