public void Push(IDataflowMessage <TIn>[] items) { var skippedBrokenItemsArray = items.Where(item => !item.IsBroken).Select(item => item).ToArray(); m_DecoratedTarget.Push(skippedBrokenItemsArray); //var itemsCnt = items.Count(); //var validItemsCnt = skippedBrokenItemsArray.Count(); m_nms++; Send(new WorkloadStatisticsContext(this.GroupGuid, this.TaskGuid, m_nms, m_InMsgFunc(), -1, GetBoundedCapacity(), Title)); }
public void Push(IDataflowMessage <TIn>[] items) { m_LogAgent.LogTrace(DataflowNetworkConstituent.TargetBatched, m_DecoratedTarget.Title, "Pushing with Batch-Size: {0}", items.Length); foreach (IDataflowMessage <TIn> item in items) { if (!item.IsBroken) { m_LogAgent.LogTrace(DataflowNetworkConstituent.TargetBatched, m_DecoratedTarget.Title, "Pushing: {0}", item.Title); } else { m_LogAgent.LogTrace(DataflowNetworkConstituent.Target, Title, "Broken message propagated through network. Title: {0}", item.Title); } } m_DecoratedTarget.Push(items); foreach (IDataflowMessage <TIn> item in items) { m_LogAgent.LogTrace(DataflowNetworkConstituent.TargetBatched, m_DecoratedTarget.Title, "Pushed: {0}", item.Title); } m_LogAgent.LogTrace(DataflowNetworkConstituent.TargetBatched, m_DecoratedTarget.Title, "Pushed with Batch-Size: {0}", items.Length); }
public void Push(IDataflowMessage <TIn>[] items) { Interlocked.Add(ref NumProcessedMessages, items.LongLength); m_DecoratedTarget.Push(items); }