internal void AddInstrumentDayOpenCloseTimeRecordByDB(Protocal.InstrumentDayOpenCloseTimeRecord record) { try { _readWriteLock.EnterWriteLock(); Logger.Info("AddInstrumentDayOpenCloseTimeRecordByDB"); this.AddInstrumentDayOpenCloseTimeRecordCommon(record); } finally { _readWriteLock.ExitWriteLock(); } }
private void AddInstrumentDayOpenCloseTimeRecordCommon(Protocal.InstrumentDayOpenCloseTimeRecord record) { Dictionary <DateTime, Protocal.InstrumentDayOpenCloseTimeRecord> recordDict; if (!_instrumentDayOpenCloseDict.TryGetValue(record.Id, out recordDict)) { recordDict = new Dictionary <DateTime, Protocal.InstrumentDayOpenCloseTimeRecord>(); _instrumentDayOpenCloseDict.Add(record.Id, recordDict); } if (recordDict.Count > 0) { this.RemoveLessThenTradeDayRecords(record.TradeDay, recordDict); } if (!recordDict.ContainsKey(record.TradeDay)) { recordDict.Add(record.TradeDay, record); } }