protected override void OnQuoteDateTime(QuoteDateTimeEvent e) { bool bFlag = false; lock (__oLock) { bFlag = __bFlag; __bFlag = true; } if (!bFlag) { DateTime cTime = e.QuoteDateTime; TimeSpan cTimeSpan = cTime.TimeOfDay; if (cTimeSpan >= __cStartTime && cTimeSpan <= __cStopTime) { if (cTime.Second == 0) { __cList.Add(__cTrust); __cTrust = new __Trust(); __cTrust.time = e.QuoteDateTime; CalcTrust(); System.Console.WriteLine(e.QuoteDateTime); } else { CalcTrust(); } } else { if (__bSaveFile && cTimeSpan > __cStopTime) { //收盤存檔 __bSaveFile = false; __cList.Add(__cTrust); Save(); System.Console.WriteLine("Save trust to file..."); } if (__cList.Count > 0 && (cTimeSpan > __cClearTime && cTimeSpan < __cStartTime)) { __bSaveFile = true; __cList.Clear(); System.Console.WriteLine("Clear trust structure..."); } } lock (__oLock) { __bFlag = false; } } }
private void QuoteService_onQuoteDateTime(object sender, QuoteDateTimeEvent e) { OnQuoteDateTime(e); }
/// <summary> /// 由伺服器報價時間觸發的引動事件 /// </summary> /// <param name="e">伺服器報價時間資訊</param> protected virtual void OnQuoteDateTime(QuoteDateTimeEvent e) { if (onQuoteDateTime != null) { onQuoteDateTime(this, e); } }