コード例 #1
0
 /// <summary>
 /// Called by a linked <see cref="ITargetBlock{TOutput}"/> to accept and consume
 /// a DataflowMessageHeader previously offered by this <see cref="ISourceBlock{TInput}"/>.
 /// </summary>
 /// <param name="messageHeader">The <see cref="DataflowMessageHeader"/> of the message being consumed.</param>
 /// <param name="target">The <see cref="ITargetBlock{TOutput}"/> consuming the message. </param>
 /// <param name="messageConsumed"><c>True</c> if the message was successfully consumed. <c>False</c> otherwise. </param>
 /// <returns>
 /// The value of the consumed message. This may correspond to a different DataflowMessageHeader
 /// instance than was previously reserved and passed as the messageHeader to ConsumeMessage.
 /// The consuming ITargetBlock`1 must use the returned value instead of the value passed as messageValue
 /// through OfferMessage.
 /// </returns>
 /// <seealso cref="ISourceBlock{TOutput}"/>
 public TOutput ConsumeMessage(
     DataflowMessageHeader messageHeader, ITargetBlock <TOutput> target, out bool messageConsumed)
 {
     return(_source.ConsumeMessage(messageHeader, target, out messageConsumed));
 }
コード例 #2
0
 // Called by a target to consume a previously offered message from a source.
 T[] ISourceBlock <T[]> .ConsumeMessage(DataflowMessageHeader messageHeader,
                                        ITargetBlock <T[]> target, out bool messageConsumed)
 {
     return(m_source.ConsumeMessage(messageHeader,
                                    target, out messageConsumed));
 }
コード例 #3
0
 // Called by a target to consume a previously offered message from a source.
 AnimationBase ISourceBlock <AnimationBase> .ConsumeMessage(DataflowMessageHeader messageHeader,
                                                            ITargetBlock <AnimationBase> target, out bool messageConsumed)
 {
     return(_msource.ConsumeMessage(messageHeader,
                                    target, out messageConsumed));
 }