SonarLint.VisualStudio.Progress.Controller.SequentialProgressController.ThreadSafeCancelCancellationTokenSource C# (CSharp) Method

ThreadSafeCancelCancellationTokenSource() private method

private ThreadSafeCancelCancellationTokenSource ( ) : bool
return bool
        private bool ThreadSafeCancelCancellationTokenSource()
        {
            if (this.CanAbort && this.cancellationTokenSource != null && !this.cancellationTokenSource.IsCancellationRequested)
            {
                lock (this.locker)
                {
                    if (this.CanAbort && this.cancellationTokenSource != null && !this.cancellationTokenSource.IsCancellationRequested)
                    {
                        this.cancellationTokenSource.Cancel();
                        return true;
                    }
                }
            }

            return false;
        }