1 write to _nonGreedy
System.Threading.Tasks.Dataflow (1)
Blocks\JoinBlock.cs (1)
519if (!dbo.Greedy || dbo.BoundedCapacity > 0) _nonGreedy = new NonGreedyState();
32 references to _nonGreedy
System.Threading.Tasks.Dataflow (32)
Blocks\JoinBlock.cs (32)
536Debug.Assert(_nonGreedy!.ConsumedMessage.Key, "A message must have been consumed by this point."); 537T value = _nonGreedy.ConsumedMessage.Value; 538_nonGreedy.ConsumedMessage = new KeyValuePair<bool, T>(false, default(T)!); 566return _nonGreedy!.ConsumedMessage.Key; 577return _nonGreedy != null && _nonGreedy.PostponedMessages.Count > 0; 587return !_sharedResources._dataflowBlockOptions.Greedy ? _nonGreedy!.PostponedMessages.Count : _messages!.Count; 624if (!_nonGreedy!.PostponedMessages.TryPop(out next)) return false; 634_nonGreedy.ReservedMessage = next; 643if (!_nonGreedy.PostponedMessages.TryPop(out next)) return false; 654Debug.Assert(_nonGreedy!.ReservedMessage.Key != null, "This target must have a reserved message"); 657T? consumedValue = _nonGreedy.ReservedMessage.Key.ConsumeMessage(_nonGreedy.ReservedMessage.Value, this, out consumed); 660_nonGreedy.ReservedMessage = default(KeyValuePair<ISourceBlock<T>, DataflowMessageHeader>); 680Debug.Assert(!_nonGreedy.ConsumedMessage.Key, "There must be no other consumed message"); 681_nonGreedy.ConsumedMessage = new KeyValuePair<bool, T>(true, consumedValue!); 712!boundingCapacityAvailable || !_nonGreedy!.PostponedMessages.TryPop(out next)) 743_nonGreedy!.ConsumedMessage.Key ? 1 : 0; 768if (_nonGreedy != null && _nonGreedy.ReservedMessage.Key != null) 771try { _nonGreedy.ReservedMessage.Key.ReleaseReservation(_nonGreedy.ReservedMessage.Value, this); } 780Debug.Assert(_nonGreedy != null, "Only valid in non-greedy mode."); 782_nonGreedy.ReservedMessage = default(KeyValuePair<ISourceBlock<T>, DataflowMessageHeader>); 791Debug.Assert(_nonGreedy == null || _nonGreedy.ReservedMessage.Key == null, 803if (_nonGreedy != null) 806Common.ReleaseAllPostponedMessages(this, _nonGreedy.PostponedMessages, ref exceptions); 851_nonGreedy!.PostponedMessages.Count == 0 && _sharedResources._taskForInputProcessing == null))) 879Debug.Assert(_nonGreedy != null, "_nonGreedy must have been initialized during construction in non-greedy mode."); 882_nonGreedy.PostponedMessages.Push(source, messageHeader); 953private int InputCountForDebugger { get { return _messages != null ? _messages.Count : _nonGreedy!.ConsumedMessage.Key ? 1 : 0; } }