1 write to _sharedResources
System.Threading.Tasks.Dataflow (1)
15 references to _sharedResources
System.Threading.Tasks.Dataflow (15)
Blocks\JoinBlock.cs (15)
289if (dataflowBlockOptions.BoundedCapacity > 0) onItemsRemoved = static (owningSource, count) => ((JoinBlock<T1, T2, T3>)owningSource)._sharedResources.OnItemsRemoved(count);
293static owningSource => ((JoinBlock<T1, T2, T3>)owningSource)._sharedResources.CompleteEachTarget(),
302Volatile.Write(ref _sharedResources!._hasExceptions, true);
306targets[0] = _target1 = new JoinBlockTarget<T1>(_sharedResources);
307targets[1] = _target2 = new JoinBlockTarget<T2>(_sharedResources);
308targets[2] = _target3 = new JoinBlockTarget<T3>(_sharedResources);
329dataflowBlockOptions.CancellationToken, _source.Completion, static (state, _) => ((JoinBlock<T1, T2, T3>)state!)._sharedResources.CompleteEachTarget(), this);
378Debug.Assert(_sharedResources != null, "_sharedResources not initialized");
379Debug.Assert(_sharedResources._exceptionAction != null, "_sharedResources._exceptionAction not initialized");
381lock (_sharedResources.IncomingLock)
383if (!_sharedResources._decliningPermanently) _sharedResources._exceptionAction(exception);
449public long JoinsCreated { get { return _joinBlock._sharedResources._joinsCreated; } }
452public Task? TaskForInputProcessing { get { return _joinBlock._sharedResources._taskForInputProcessing; } }
459public bool IsDecliningPermanently { get { return _joinBlock._sharedResources._decliningPermanently; } }