class Boo : IDisposable { ... }
// For not-sealed classes
protected virtual void Dispose(bool disposing) {}
// For sealed classes
private void Dispose(bool disposing) {}
public void Dispose()
{
Dispose(true /*called by user directly*/);
GC.SuppressFinalize(this);
}
void Dispose(bool disposing)
{
if (disposing)
{
// Releasing managed resources only
}
// Releasing unmanaged resources
}
~Boo()
{
Dispose(false /*not called by user directly*/);
}
void Dispose(bool disposing)
{
if (disposed)
return; // Resources are already released
// Releasing resources
disposed = true;
}
public void SomeMethod()
{
if (disposed)
throw new ObjectDisposedException();
}
// Use with caution
class Foo : CriticalFinalizerObject {}
Если не удалось найти и скачать презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:
Email: Нажмите что бы посмотреть