internal virtual void internal_Register (dLightWeightProcessThread.IndicateProcessHasWorkCall _ProcessEnqueue) { m_ProcessEnqueue = _ProcessEnqueue; while (m_PreRegesterProcessCount > 0) { IncrementProcessFlag (); m_PreRegesterProcessCount--; } Registered (); }
internal override void internal_Register (dLightWeightProcessThread.IndicateProcessHasWorkCall _ProcessEnqueue) { base.internal_Register (_ProcessEnqueue); if (Interlocked.Increment (ref ms_count) == 1) ms_timerQ = NativeMethods.CreateTimerQueue (); NativeMethods.CreateTimerQueueTimer ( ref m_timer, ms_timerQ, new WaitOrTimerDelegate (MyDelegate), IntPtr.Zero, 0, (uint) m_updateRatems, NativeMethods.TimerQueueFlags.WT_EXECUTEINIOTHREAD); }