コード例 #1
0
        private void CancelDirect()
        {
            _state = State.Canceled;
            var cancelContainer = Internal.CancelContainerVoid.GetOrCreate();

            _valueOrPrevious = cancelContainer;
            AddBranchesToHandleQueueBack(cancelContainer);
            CancelProgressListeners();
            Internal.AddToHandleQueueFront(this);
        }
コード例 #2
0
        protected void CancelDirect <TCancel>(ref TCancel reason)
        {
            _state = State.Canceled;
            var cancelContainer = Internal.CreateCancelContainer(ref reason);

            cancelContainer.Retain();
            _valueOrPrevious = cancelContainer;
            AddBranchesToHandleQueueBack(cancelContainer);
            CancelProgressListeners();
            Internal.AddToHandleQueueFront(this);
        }