1 write to _nonGreedy
System.Threading.Tasks.Dataflow (1)
Blocks\JoinBlock.cs (1)
507if (!dbo.Greedy || dbo.BoundedCapacity > 0) _nonGreedy = new NonGreedyState();
32 references to _nonGreedy
System.Threading.Tasks.Dataflow (32)
Blocks\JoinBlock.cs (32)
524Debug.Assert(_nonGreedy!.ConsumedMessage.Key, "A message must have been consumed by this point."); 525T value = _nonGreedy.ConsumedMessage.Value; 526_nonGreedy.ConsumedMessage = new KeyValuePair<bool, T>(false, default(T)!); 554return _nonGreedy!.ConsumedMessage.Key; 565return _nonGreedy != null && _nonGreedy.PostponedMessages.Count > 0; 575return !_sharedResources._dataflowBlockOptions.Greedy ? _nonGreedy!.PostponedMessages.Count : _messages!.Count; 612if (!_nonGreedy!.PostponedMessages.TryPop(out next)) return false; 622_nonGreedy.ReservedMessage = next; 631if (!_nonGreedy.PostponedMessages.TryPop(out next)) return false; 642Debug.Assert(_nonGreedy!.ReservedMessage.Key != null, "This target must have a reserved message"); 645T? consumedValue = _nonGreedy.ReservedMessage.Key.ConsumeMessage(_nonGreedy.ReservedMessage.Value, this, out consumed); 648_nonGreedy.ReservedMessage = default(KeyValuePair<ISourceBlock<T>, DataflowMessageHeader>); 668Debug.Assert(!_nonGreedy.ConsumedMessage.Key, "There must be no other consumed message"); 669_nonGreedy.ConsumedMessage = new KeyValuePair<bool, T>(true, consumedValue!); 700!boundingCapacityAvailable || !_nonGreedy!.PostponedMessages.TryPop(out next)) 731_nonGreedy!.ConsumedMessage.Key ? 1 : 0; 756if (_nonGreedy != null && _nonGreedy.ReservedMessage.Key != null) 759try { _nonGreedy.ReservedMessage.Key.ReleaseReservation(_nonGreedy.ReservedMessage.Value, this); } 768Debug.Assert(_nonGreedy != null, "Only valid in non-greedy mode."); 770_nonGreedy.ReservedMessage = default(KeyValuePair<ISourceBlock<T>, DataflowMessageHeader>); 779Debug.Assert(_nonGreedy == null || _nonGreedy.ReservedMessage.Key == null, 791if (_nonGreedy != null) 794Common.ReleaseAllPostponedMessages(this, _nonGreedy.PostponedMessages, ref exceptions); 839_nonGreedy!.PostponedMessages.Count == 0 && _sharedResources._taskForInputProcessing == null))) 867Debug.Assert(_nonGreedy != null, "_nonGreedy must have been initialized during construction in non-greedy mode."); 870_nonGreedy.PostponedMessages.Push(source, messageHeader); 938private int InputCountForDebugger { get { return _messages != null ? _messages.Count : _nonGreedy!.ConsumedMessage.Key ? 1 : 0; } }