2014-06-06 2 views
-4

오전 6 시부 터 오후 6 시까 지 C#을 사용하여 SMS 프로그램을 보내고 있습니다. 6PM 일 때 그 프로세스를 중지하고 다음 날 오전 7시 프로세스를 다시 시작합니다. 다음 코드는 작동하지 않습니다. 프로그램이 실행 중일 때 시간이 오후 6 시가되면 멈추지 않습니다. Plz이 해결하는 데 도움이됩니다. 당신조건이 참일 때 실행중인 프로그램을 중지하고 다시 시작하는 방법

new Thread(delegate() 
{ 
    while (DateTime`me.Now.Hour.ToString("HH") != "18") 
    { 
     sms.endSMS(); 
     Thread.Sleep(20000);}  
     Thread.Sleep(500000); 
}).Start(); 
+3

... 나, 매일 밤 다음 윈도우에 내장 된 작업 스케줄러 7am에 귀하의 응용 프로그램을 시작하는 매일 사용 .. –

+0

가 DateTime'me 무엇 오후 6시에 프로세스를 종료? –

+1

또한 Quartz.net – Aron

답변

0

의 예약 된 시간에 프로세스를 중지 할 Windows Task Scheduler 또는 Cron 같은 작업 스케줄러를 사용하는 것이 좋습니다 감사합니다. 그러나 지정된 코드에 대한 응답을 원할 경우 아래 코드를 사용할 수 있습니다.

Thread timerThread = new Thread(()=> 
      { 
       while(true) 
       { 
        if(DateTime.Now.Hour >= 6 && DateTime.Now.Hour <= 17) 
        { 
         sms.SendSms(); 
         Thread.Sleep(300000); 
        } 
        else 
        { 
         Thread.Sleep(3600000); 
        } 
       }}); 
     timerThread.Priority = ThreadPriority.Normal; 
     timerThread.IsBackground = true; 
     timerThread.Start(); 
+0

Thnx 많이 ... (Y) – user3710683

1

시작하고 날 나는이 작업을 위해 Windows 작업 스케줄러와 타이머를 사용하는 것이 좋습니다

+0

Thnx 많이보십시오 ... (Y) – user3710683

관련 문제