Запланированное задание со службами Windows и system.timer.timer - PullRequest
1 голос
/ 30 марта 2010

Я хочу реализовать запланированную задачу служб Windows. Я уже создал службу Windows. В сервисе я реализовал timer.Timer инициализируется в интервале класса. Интервал таймеров задается в методе запуска сервиса, а также включается в методе запуска сервиса. После истечения времени таймера это огонь, я выполнил некоторые действия.

Моя проблема в том, что я нахожусь в дилемме. Допустим, действие, которое я совершил в событии Elapsed, скажем, занимает один час, а интервал таймеров установлен на полчаса. поэтому есть вероятность, что даже если предыдущий вызов прошедшего события не завершился, произойдет новый вызов прошедшего события.

мой вопрос, будет ли конфликт, или все нормально, или я буду использовать темы. пожалуйста, дайте совет

1 Ответ

0 голосов
/ 30 марта 2010

Вы можете остановить таймер в начале вашего метода длительного запуска, а затем запустить его снова в конце:

Timer.Change(Timeout.Infinite, Timeout.Infinite)
// do long task ...
Timer.Change(dueTime,period)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...