示例#1
0
        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);
 }