I think the answer is probably yes: a FileAppender owns an IDisposable Stream, 
and other appenders probably own IDisposable objects.

I would suggest having AppenderSkeleton implement IDisposable, rather than 
IAppender.  The Dispose method would call OnClose.

I also notice that AppenderSkeleton has a finalizer, which it shouldn't as it 
doesn't own any unmanaged resources.

Do you see any problems with making the above changed?

Reply via email to