protected virtual void Dispose(bool disposing) { lock (_lock) { if (!_disposed) { if (disposing) { if (_initArgs != null) { _initArgs.Dispose(); } } _initArgs = null; _disposed = true; } } }