private void StartWocv() { m_runNumber++; while (m_numNonDaemonEventsPending > 0 && !m_stopRequested) { m_currentEvent = Dequeue(); m_eventCount++; m_now = new DateTime(m_currentEvent.When); #region TEMPORAL DEBUGGING if (m_hasTarget && (m_now.ToString().Equals(_targetdatestr) || (!m_hasFired && m_now > m_targetdate))) { m_hasFired = true; m_hoverHere = m_now.ToString(); System.Diagnostics.Debugger.Break(); } #endregion TEMPORAL DEBUGGING if (m_eventAboutToFire != null) { m_eventAboutToFire(m_currentEvent.Key, m_currentEvent.Eer, 0.0, m_now, m_currentEvent.UserData, ExecEventType.Synchronous); } m_currentEvent.Eer(this, m_currentEvent.UserData); if (m_eventHasCompleted != null) { m_eventHasCompleted(m_currentEvent.Key, m_currentEvent.Eer, 0.0, m_now, m_currentEvent.UserData, ExecEventType.Synchronous); } m_execEventCache.Return(m_currentEvent); } }
private void StartWcv() { m_runNumber++; while (m_numNonDaemonEventsPending > 0 && !m_stopRequested) { m_currentEvent = Dequeue(); m_eventCount++; if (m_now.Ticks > m_currentEvent.When) { string who = m_currentEvent.Eer.Target.GetType().FullName; if (m_currentEvent.Eer.Target is IHasName) { who = ((IHasName)m_currentEvent.Eer.Target).Name; } string method = m_currentEvent.Eer.Method.Name + "(...)"; if (true) { m_currentEvent.When = m_now.Ticks;// System.Diagnostics.Debugger.Break(); } else { // throw new ApplicationException(msg); } } m_lastEventServiceTime = m_now; m_now = new DateTime(m_currentEvent.When); if (m_eventAboutToFire != null) { m_eventAboutToFire(m_currentEvent.Key, m_currentEvent.Eer, 0.0, m_now, m_currentEvent.UserData, ExecEventType.Synchronous); } m_currentEvent.Eer(this, m_currentEvent.UserData); if (m_eventHasCompleted != null) { m_eventHasCompleted(m_currentEvent.Key, m_currentEvent.Eer, 0.0, m_now, m_currentEvent.UserData, ExecEventType.Synchronous); } m_execEventCache.Return(m_currentEvent); } }