Exemplo n.º 1
0
        /// <summary>
        /// 添加或修改或移去的时间片
        /// </summary>
        /// <param name="tTimer"></param>
        /// <param name="newIndex"></param>
        /// <param name="isAdd"></param>
        private static void Change( TimeSlice tTimer, long newIndex, bool isAdd )
        {
            lock( s_LockTimerChangeEntryChangeQueue )
            {
                // 在ProcessChangeQueue(...)中释放入不使用的列表中
                s_TimerChangeEntryChangeQueue.Enqueue( new TimerChangeEntry( tTimer, newIndex, isAdd ) );
            }

            // 发生事件
            s_Signal.Set();
        }
Exemplo n.º 2
0
 /// <summary>
 /// 添加或修改或移去时间片
 /// </summary>
 /// <param name="tTimer"></param>
 public static void AddTimer( TimeSlice tTimer )
 {
     Change( tTimer, (long)tTimer.Frequency, true );
 }
Exemplo n.º 3
0
 /// <summary>
 /// 移去时间片
 /// </summary>
 /// <param name="tTimer"></param>
 public static void RemoveTimer( TimeSlice tTimer )
 {
     Change( tTimer, -1, false );
 }
Exemplo n.º 4
0
 /// <summary>
 /// ��ʼ������
 /// </summary>
 /// <param name="timeSlice"></param>
 public StopTimeSliceEventArgs( TimeSlice timeSlice )
 {
     m_TimeSlice = timeSlice;
 }