TPL Dataflow: Logging With LinkTo Filter
Thankfully somebody showed me a better way to log:
var firstBuffer = new BufferBlock<int>();
var secondBuffer = new BufferBlock<int>();
var msgBus = new ActionBlock<int>(i => Console.WriteLine(string.Join(" ", "MsgBus: ", i)));
var logger = new ActionBlock<int>(i => Console.WriteLine(string.Join(" ", "Logger", i)));
firstBuffer.LinkTo(secondBuffer, x => x > 1);
firstBuffer.LinkTo(logger);
secondBuffer.LinkTo(msgBus, item =>
{
Console.WriteLine(string.Join(" ", "Filter Logger", item.ToString()));
return true; });
firstBuffer.Post(1);
firstBuffer.Post(2);
Advertisement
