8[DebuggerDisplay(
"{DebuggerDisplayContent,nq}")]
113 return $"Block=\"{((debuggerDisplay != null) ? debuggerDisplay.Content : _owningSource)}\"";
171 TOutput result =
default(TOutput);
177 return default(TOutput);
184 return default(TOutput);
263 item =
default(TOutput);
350 for (
int i = 0; i <
list.Count; i++)
355 else if (items
is TOutput[]
array)
357 for (
int j = 0;
j <
array.Length;
j++)
364 foreach (TOutput
item in items)
429 TOutput result =
default(TOutput);
540 flag = _targetRegistry.FirstTargetNode !=
null;
static string Argument_InvalidMessageHeader
static string InvalidOperation_MessageNotReservedByTarget
static void MemoryBarrier()
static bool IsEntered(object obj)
TaskScheduler TaskScheduler
int ActualMaxMessagesPerTask
CancellationToken CancellationToken
static Exception StartTaskSafe(Task task, TaskScheduler scheduler)
static void PropagateCompletionOnceCompleted(Task sourceCompletionTask, IDataflowBlock target)
static TaskCreationOptions GetCreationOptionsForTask(bool isReplacementReplica=false)
static void PropagateCompletion(Task sourceCompletionTask, IDataflowBlock target, Action< Exception > exceptionHandler)
static void AddException([NotNull] ref List< Exception > list, Exception exception, bool unwrapInnerExceptions=false)
static readonly DataflowEtwProvider Log
static readonly IDisposable Nop
TOutput ConsumeMessage(DataflowMessageHeader messageHeader, ITargetBlock< TOutput > target, out bool messageConsumed)
bool TryReceiveAll([NotNullWhen(true)] out IList< TOutput > items)
readonly Func< ISourceBlock< TOutput >, TOutput, IList< TOutput >, int > _itemCountingFunc
void AddMessages(IEnumerable< TOutput > items)
void OfferAsyncIfNecessary(bool isReplacementReplica, bool outgoingLockKnownAcquired)
bool OfferMessageToTarget(DataflowMessageHeader header, TOutput message, ITargetBlock< TOutput > target, out bool messageWasAccepted)
IDisposable LinkTo(ITargetBlock< TOutput > target, DataflowLinkOptions linkOptions)
void CompleteBlockOncePossible()
Task _taskForOutputProcessing
bool ReserveMessage(DataflowMessageHeader messageHeader, ITargetBlock< TOutput > target)
readonly System.Threading.Tasks.SingleProducerSingleConsumerQueue< TOutput > _messages
object DebuggerDisplayContent
void CompleteBlockIfPossible()
readonly Action< ISourceBlock< TOutput >, int > _itemsRemovedAction
List< Exception > _exceptions
void OfferAsyncIfNecessary_Slow(bool isReplacementReplica, bool outgoingLockKnownAcquired)
PaddedInt64 _nextMessageId
void ReleaseReservation(DataflowMessageHeader messageHeader, ITargetBlock< TOutput > target)
readonly ISourceBlock< TOutput > _owningSource
bool TryReceive(Predicate< TOutput > filter, [MaybeNullWhen(false)] out TOutput item)
ITargetBlock< TOutput > _nextMessageReservedFor
void AddException(Exception exception)
readonly Action< ISourceBlock< TOutput > > _completeAction
void CompleteBlockIfPossible_Slow()
readonly TargetRegistry< TOutput > _targetRegistry
DebuggingInformation GetDebuggingInformation()
void AddMessage(TOutput item)
SourceCore(ISourceBlock< TOutput > owningSource, DataflowBlockOptions dataflowBlockOptions, Action< ISourceBlock< TOutput > > completeAction, Action< ISourceBlock< TOutput >, int > itemsRemovedAction=null, Func< ISourceBlock< TOutput >, TOutput, IList< TOutput >, int > itemCountingFunc=null)
void OfferMessagesLoopCore()
void AddAndUnwrapAggregateException(AggregateException aggregateException)
void AddExceptions(List< Exception > exceptions)
bool _decliningPermanently
void OfferAsyncIfNecessaryWithValueLock()
readonly TaskCompletionSource< VoidResult > _completionTask
bool OfferToTargets(ITargetBlock< TOutput > linkToTarget=null)
readonly DataflowBlockOptions _dataflowBlockOptions
LinkedTargetInfo FirstTargetNode
void PropagateCompletion(LinkedTargetInfo firstTarget)
LinkedTargetInfo ClearEntryPoints()
void Remove(ITargetBlock< T > target, bool onlyIfReachedMaxMessages=false)
void Add(ref ITargetBlock< T > target, DataflowLinkOptions linkOptions)
static TaskScheduler Default
static new TaskFactory< TResult > Factory
static bool Read(ref bool location)
bool IsCancellationRequested
static CancellationToken None