示例#1
0
        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);
            }
        }
示例#2
0
 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);
     }
 }