Salvando uma classe em um disco ao descartar: Meu código possui bugs?
Estou tentando criar uma classe simples que se serialize em disco quando não estiver mais em uso. O código que tenho agora (veja abaixo). O código que tenho agora parece funcionar, mas não tenho total confiança em meu conhecimento, portanto, estou me perguntando se mais alguém vê algum problema significativo com esse código.
void IDisposable.Dispose()
{
Dispose(true);
GC.SuppressFinalize(this);
}
~MyClass()
{
Dispose(false);
}
protected virtual void Dispose(bool disposing)
{
if (!this.disposed)
{
MemoryStream ms = new MemoryStream();
BinaryFormatter bf = new BinaryFormatter();
bf.Serialize(ms, this);
byte[] output = Dostuff(ms);
File.WriteAllBytes(DBPATH, output);
}
this.disposed = true;
}