Fixed race in trading perf test. Fixes #1383
This commit is contained in:
parent
bff464479b
commit
a229140fac
2 changed files with 7 additions and 10 deletions
|
|
@ -51,11 +51,10 @@ object Orderbook {
|
|||
|
||||
val useDummyOrderbook = System.getProperty("benchmark.useDummyOrderbook", "false").toBoolean
|
||||
|
||||
def apply(symbol: String, standby: Boolean): Orderbook = standby match {
|
||||
case false if !useDummyOrderbook ⇒ new Orderbook(symbol) with SimpleTradeObserver
|
||||
case true if !useDummyOrderbook ⇒ new Orderbook(symbol) with StandbyTradeObserver
|
||||
case false if useDummyOrderbook ⇒ new DummyOrderbook(symbol) with SimpleTradeObserver
|
||||
case true if useDummyOrderbook ⇒ new DummyOrderbook(symbol) with StandbyTradeObserver
|
||||
def apply(symbol: String, standby: Boolean): Orderbook = (useDummyOrderbook, standby) match {
|
||||
case (false, false) ⇒ new Orderbook(symbol) with NopTradeObserver
|
||||
case (false, true) ⇒ new Orderbook(symbol) with TotalTradeObserver
|
||||
case (true, _) ⇒ new DummyOrderbook(symbol) with NopTradeObserver
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -6,15 +6,13 @@ abstract trait TradeObserver {
|
|||
def trade(bid: Bid, ask: Ask)
|
||||
}
|
||||
|
||||
trait SimpleTradeObserver extends TradeObserver {
|
||||
trait TotalTradeObserver extends TradeObserver {
|
||||
override def trade(bid: Bid, ask: Ask) {
|
||||
if (!Orderbook.useDummyOrderbook) {
|
||||
TotalTradeCounter.counter.incrementAndGet
|
||||
}
|
||||
TotalTradeCounter.counter.incrementAndGet
|
||||
}
|
||||
}
|
||||
|
||||
trait StandbyTradeObserver extends TradeObserver {
|
||||
trait NopTradeObserver extends TradeObserver {
|
||||
override def trade(bid: Bid, ask: Ask) {
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue