public Consumer(ICoalescingBuffer<long, MarketSnapshot> buffer, int numberOfInstruments, MarketSnapshot poisonPill, StopWatch stopWatch) { _buffer = buffer; _numberOfInstruments = numberOfInstruments; _poisonPill = poisonPill; _stopWatch = stopWatch; LatestSnapshots = new MarketSnapshot[numberOfInstruments]; }
public Producer(ICoalescingBuffer<long, MarketSnapshot> buffer, int numberOfInstruments, long numberOfUpdates, MarketSnapshot poisonPill, StopWatch stopWatch) { _buffer = buffer; _numberOfInstruments = numberOfInstruments; _numberOfUpdates = numberOfUpdates; _poisonPill = poisonPill; _stopWatch = stopWatch; _snapshots = CreateSnapshots(numberOfInstruments); }
public long Run() { gc(); Console.WriteLine("testing " + _buffer.GetType() + " with " + _numberOfUpdates + " updates..."); var stopWatch = new StopWatch(); var producer = new Producer(_buffer, NumberOfInstruments, _numberOfUpdates, PoisonPill, stopWatch); var consumer = new Consumer(_buffer, NumberOfInstruments, PoisonPill, stopWatch); var producerThread = new Thread(producer.Run); var consumerThread = new Thread(consumer.Run); producerThread.Start(); consumerThread.Start(); consumerThread.Join(); return ComputeAndPrintResults(consumer, stopWatch.nanosTaken()); }
public Consumer(ICoalescingBuffer <long, MarketSnapshot> buffer, int numberOfInstruments, MarketSnapshot poisonPill, StopWatch stopWatch) { _buffer = buffer; _numberOfInstruments = numberOfInstruments; _poisonPill = poisonPill; _stopWatch = stopWatch; LatestSnapshots = new MarketSnapshot[numberOfInstruments]; }
public Producer(ICoalescingBuffer <long, MarketSnapshot> buffer, int numberOfInstruments, long numberOfUpdates, MarketSnapshot poisonPill, StopWatch stopWatch) { _buffer = buffer; _numberOfInstruments = numberOfInstruments; _numberOfUpdates = numberOfUpdates; _poisonPill = poisonPill; _stopWatch = stopWatch; _snapshots = CreateSnapshots(numberOfInstruments); }