public void Start() { var performanceLogger = new LoggerConfiguration() .WriteTo.RollingFile("perf.log") .CreateLogger(); var eventHandler = new EventHandler("A"); metricsEventHandler = new FixedSecondCountReporter <QueueItem>( new ISink[] { new SerilogSink(performanceLogger, "DemoBuffer"), new ColoredConsoleSink() }, 1); //disruptor = new Disruptor<QueueItem>(() => new QueueItem(), ringbufferSize, TaskScheduler.Default); disruptor = new Disruptor <QueueItem>(() => new QueueItem(), new SingleThreadedClaimStrategy(ringbufferSize), new BusySpinWaitStrategy(), TaskScheduler.Default); disruptor.HandleExceptionsWith(new FatalExceptionHandler()); disruptor.HandleEventsWith(eventHandler, metricsEventHandler); ringBuffer = disruptor.Start(); metricsEventHandler.Setup(ringBuffer); }
public void Start() { metricsEventHandler = new FixedMessageCountReporter <QueueItem>(new ColoredConsoleSink(), 1000000); disruptor = new Disruptor <QueueItem>(() => new QueueItem(), new SingleThreadedClaimStrategy(ringbufferSize), new BusySpinWaitStrategy(), TaskScheduler.Default); disruptor.HandleEventsWith(metricsEventHandler); ringBuffer = disruptor.Start(); metricsEventHandler.Setup(ringBuffer); }
public void Start() { var eventHandler = new EventHandler("A"); metricsEventHandler = new FixedSecondCountReporter <QueueItem>(new ColoredConsoleSink(), 1); //disruptor = new Disruptor<QueueItem>(() => new QueueItem(), ringbufferSize, TaskScheduler.Default); disruptor = new Disruptor <QueueItem>(() => new QueueItem(), new SingleThreadedClaimStrategy(ringbufferSize), new BusySpinWaitStrategy(), TaskScheduler.Default); disruptor.HandleExceptionsWith(new FatalExceptionHandler()); disruptor.HandleEventsWith(metricsEventHandler); ringBuffer = disruptor.Start(); metricsEventHandler.Setup(ringBuffer); }