public void UpdateBySnapshot(CBfxStockStorMsgUpdSnap data) { CBfxStorStorMsg msg = new CBfxStorStorMsg { Event = EnmStockMsgUpd.UpdateSnapshot, Data = data }; _queue.Add(msg); }
public void Update(CBfxStockStorUpdStock data) { CBfxStorStorMsg msg = new CBfxStorStorMsg { Event = EnmStockMsgUpd.UpdateStock, Data = data }; _queue.Add(msg); }
public void ThreadMain() { while (true) { CBfxStorStorMsg msg = _queue.GetElementBlocking(); if (msg.Event == EnmStockMsgUpd.UpdateStock) { CBfxStockStorUpdStock updStock = (CBfxStockStorUpdStock)msg.Data; Update(updStock.prec, updStock.price, updStock.count, updStock.amount); } else if (msg.Event == EnmStockMsgUpd.UpdateSnapshot) { CBfxStockStorMsgUpdSnap updSnap = (CBfxStockStorMsgUpdSnap)msg.Data; UpdateBySnapshot(updSnap.prec, updSnap.jArrOrderBook); } } }