C\#여러 개의 타이머 가 서로 다른 시간 을 기록 합 니 다.

본 논문 의 사례 는 C\#여러 개의 타이머 가 서로 다른 시간 을 기록 하 는 구체 적 인 코드 를 공유 하여 여러분 께 참고 하 시기 바 랍 니 다.구체 적 인 내용 은 다음 과 같 습 니 다.
1.타이머 클래스 정의,의뢰 정의

//  Timer 
System.Threading.Timer t3,t1,t2,t4;
//    
public delegate void SetControlValue(object value);
2.초기 화

private void InitTimer()//   
    {
      
      t1= new System.Threading.Timer(new TimerCallback(T1), null, Timeout.Infinite, 1000);
      t2 = new System.Threading.Timer(new TimerCallback(T2), null, Timeout.Infinite, 1000);
      t3 = new System.Threading.Timer(new TimerCallback(T3), null, Timeout.Infinite, 1000);
      t4 = new System.Threading.Timer(new TimerCallback(T4), null, Timeout.Infinite, 1000);
 }

3.타 이 밍 시간 이 다 르 기 때문에 서로 다른 정형 변 수 를 정의 할 때,분,초:

//   
int hour = 0;
int minute = 0;
int second = 0;
//   
int hour2 = 0;
int minute2 = 0;
int second2 = 0;
//   
int hour3 = 0;
int minute3 = 0;
int second3 = 0;
//   
int hour4 = 0;
int minute4 = 0;
int second4 = 0;
4.시간 실행 방법 및 출력:

private void T4(object state)//   T  
    {

      try
      {
        second4++;
        if (second4 == 60)
        {
          minute4++;
          second4 = 0;
        }
        if (minute4 == 60)
        {
          hour4++;
          minute4 = 0;
        }
        this.Invoke(new SetControlValue(S4), second4);
        this.Invoke(new SetControlValue(S4), minute4);
        this.Invoke(new SetControlValue(S4), hour4);
      }
      catch
      {

      }
    }

    private void S4(object value)
    {
      textBox4.Text = hour4.ToString() + " " + minute4.ToString() + " " + second4.ToString() + " ";
    }

    private void T2(object state)
    {
      try
      {
        second2++;
        if (second2 == 60)
        {
          minute2++;
          second2 = 0;
        }
        if (minute2 == 60)
        {
          hour2++;
          minute2 = 0;
        }
        this.Invoke(new SetControlValue(S2), second2);
        this.Invoke(new SetControlValue(S2), minute2);
        this.Invoke(new SetControlValue(S2), hour2);
      }
      catch
      {

      }
    }
    private void S2(object value)
    {
      textBox2.Text = hour2.ToString() + " " + minute2.ToString() + " " + second2.ToString() + " ";
 }
5.타이머 의 실행 과 정지,각각{당신 이 정의 한.change(0,1000)},{당신 이 정의 한.change(0,1000)}로 표시 합 니 다.예 를 들 어:

t1.Change(0, 1000);
t1.Change(Timeout.Infinite, 1000);
6.효과 도:

이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기