Exemplo n.º 1
0
 public Timer AddOneShotTimer( KernelTimerCallback timerCallback, object state, uint dueTime )
 {
     Timer timer = TimerQueue.CreateOneShotTimer( TimerCallback, dueTime, TimerExecutionContext.TimerThread, false );
     Debug.Assert( timer != null );
     timer.State = new object[] { timerCallback, state };
     return timer;
 }
Exemplo n.º 2
0
        public Timer AddOneShotTimer(KernelTimerCallback timerCallback, object state, uint dueTime)
        {
            Timer timer = TimerQueue.CreateOneShotTimer(TimerCallback, dueTime, TimerExecutionContext.TimerThread, false);

            Debug.Assert(timer != null);
            timer.State = new object[] { timerCallback, state };
            return(timer);
        }
Exemplo n.º 3
0
        private void TimerCallback(Timer timer)
        {
            KernelTimerCallback realCallback = ( KernelTimerCallback )(( object[] )timer.State)[0];
            object realState = (( object[] )timer.State)[1];

            lock (_timerSyncRoot)
                _timerCompletionQueue.Enqueue(new TimerCompletionEntry(timer, realCallback, realState));
            this.Cpu.BreakExecution();
        }
Exemplo n.º 4
0
 public TimerCompletionEntry( Timer timer, KernelTimerCallback callback, object state )
 {
     this.Timer = timer;
     this.Callback = callback;
     this.State = state;
 }
Exemplo n.º 5
0
 public TimerCompletionEntry(Timer timer, KernelTimerCallback callback, object state)
 {
     this.Timer    = timer;
     this.Callback = callback;
     this.State    = state;
 }