What happens if the program exits unexpectedly (either by exception or the process is terminated)? Are there any situations like this (or otherwise) where the program will t
If the program quits unexpectedly (for example you kill the process) there are absolutely no guarantees that the IDisposable.Dispose method will be called. You'd better not rely on it for such events. The Dispose method must be called manually by your code, it's not something that the CLR will call automatically for you.