protected virtual void Dispose(bool disposing) { if (this.IsDisposed) { return; } //we don't delete the default's loop handle if (this.Handle != DefaultLoop.Handle) { if (this.Handle != IntPtr.Zero) { Uvi.uv_loop_delete(this.Handle); this.Handle = IntPtr.Zero; } } GC.SuppressFinalize(this); this.IsDisposed = true; }