이 타이머의 요점은 자정 때마다 일부 코드를 실행하는 것입니다. 기본적으로 첫 번째 간격은 Now와 자정 사이가되며 그 이후의 모든 간격은 24 시간이됩니다.타이머 및 가변 간격에 관한 질문
이제 모든 것이 잘되고 좋지만이 타이머 비즈니스가 어떻게 작동하는지 궁금합니다. 타이머가 재설정 될 때마다 MyTimer.Interval이 다시 계산됩니까?
System.Timers.Timer MyTimer = new System.Timers.Timer();
MyTimer.Elapsed += new ElapsedEventHandler(TriggeredMethod);
MyTimer.Interval = [pseudocode]Time between now and midnight[/pseudocode];
MyTimer.Start();
편집 :
나는 문제가 내 TriggerMethod 내부의 간격을 설정하는 데 문제가 있습니다. 문맥 오류가 발생하지 않도록 어디서/어떻게 타이머를 시작해야합니까?
private void Form1_Load(object sender, EventArgs e)
{
System.Timers.Timer MyTimer = new System.Timers.Timer();
MyTimer.Elapsed += new ElapsedEventHandler(TriggeredMethod);
MyTimer.Start();
}
private void TriggerMethod(object source, ElapsedEventArgs e)
{
MyTimer.Interval = [pseudocode]Time between now and midnight[/pseudocode];
}
Tick 이벤트가 의미하는 바를 명확히 할 수 있습니까? 타이머에 의해 트리거되는 메소드 내부에서 Interval을 다시 할당해야합니까? – sooprise
네, 맞습니다. 클래스의 필드에'MyTimer'를 저장해야합니다. – SLaks
'System.Timers.Timer MyTimer; '를'Form_Load' 메소드 외부로 이동하십시오. – SLaks