private T Initialize() { lock (_lock) { var changeToken = _dataSource.GetChangeToken(); _value = _initializeCore(_dataSource.Endpoints); changeToken.RegisterChangeCallback(_initializerWithState, null); return(_value); } }
private T Initialize() { lock (_lock) { var changeToken = _dataSource.GetChangeToken(); _value = _initializeCore(_dataSource.Endpoints); // Don't resubscribe if we're already disposed. if (_disposed) { return(_value); } _disposable = changeToken.RegisterChangeCallback(_initializerWithState, null); return(_value); } }