1 write to _sharedResources
System.Threading.Tasks.Dataflow (1)
Blocks\JoinBlock.cs (1)
68_sharedResources = new JoinBlockTargetSharedResources(this, targets,
14 references to _sharedResources
System.Threading.Tasks.Dataflow (14)
Blocks\JoinBlock.cs (14)
59if (dataflowBlockOptions.BoundedCapacity > 0) onItemsRemoved = static (owningSource, count) => ((JoinBlock<T1, T2>)owningSource)._sharedResources.OnItemsRemoved(count); 63static owningSource => ((JoinBlock<T1, T2>)owningSource)._sharedResources.CompleteEachTarget(), 75Volatile.Write(ref _sharedResources!._hasExceptions, true); 79targets[0] = _target1 = new JoinBlockTarget<T1>(_sharedResources); 80targets[1] = _target2 = new JoinBlockTarget<T2>(_sharedResources); 101dataflowBlockOptions.CancellationToken, _source.Completion, static (state, _) => ((JoinBlock<T1, T2>)state!)._sharedResources.CompleteEachTarget(), this); 145Debug.Assert(_sharedResources != null, "_sharedResources not initialized"); 146Debug.Assert(_sharedResources._exceptionAction != null, "_sharedResources._exceptionAction not initialized"); 148lock (_sharedResources.IncomingLock) 150if (!_sharedResources._decliningPermanently) _sharedResources._exceptionAction(exception); 213public long JoinsCreated { get { return _joinBlock._sharedResources._joinsCreated; } } 216public Task? TaskForInputProcessing { get { return _joinBlock._sharedResources._taskForInputProcessing; } } 223public bool IsDecliningPermanently { get { return _joinBlock._sharedResources._decliningPermanently; } }