C# 타이머를 사용하여 5 초 간격으로 메서드를 실행하려고합니다. 이 코드는 작동하지 않습니다. 나는 그것을 실행할 때 오류가 발생하지 않지만 프로그램 (콘솔에서 실행)은 IP.timer1.Start()
바로 종료됩니다. timer1_Elapsed 메소드가 절대 실행되지 않습니다. 나는 프로그램이 timer1_Elapsed 메소드의 첫 번째 라인에서 콘솔에 문자열을 출력하도록 시도했기 때문에 그 사실을 알고있다.C# timers.timer가 제대로 작동하지 않습니다.
class Program
{
Timer timer1 = new Timer();
static void Main(string[] args)
{
Program IP = new Program();
IP.timer1.Elapsed += new ElapsedEventHandler(timer1_Elapsed);
IP.timer1.Interval = 5000;
IP.timer1.Enabled = true;
IP.timer1.Start();
}
static void timer1_Elapsed(object sender, ElapsedEventArgs e)
{
//Function to get executed each time the counter elapses.
}
}
감사합니다. 나는 system.timers.timer를 사용하고있다. 이 픽스를 구현하는 방법에 대한 예제를 알려 주시면 정말 감사하겠습니다. 나중에 Windows 서비스로 내 소프트웨어를 실행할 예정이므로 앞으로 "console.read()"를 사용할 수 없기 때문에 – jimutt
@ user1308385 Windows 서비스로 실행하면 콘솔 응용 프로그램과 같은 방식으로 코드가 종료되지 않으므로이 문제가 발생하지 않습니다. 테스트를 위해 console.readline을 넣고 [msdn] (http://msdn.microsoft.com/en-us/library/zt39148a(v=vs.80).aspx). –