У меня есть служба, которую я написал для выполнения партийных обязанностей, но требование - начать обработку в 16:00 и завершить ее обработку в 5 утра. Если есть работа по-прежнему обрабатывается, время нужно будет продлить до завершения задания.Как запустить и остановить службу Windows по расписанию?
Могу ли я обернуть звонок onstart в таймер или что? Я действительно не знаю, как это будет выглядеть, поскольку я привык к запуску и запуску сервисов до бесконечности (или до тех пор, пока не будут установлены баки с ящиками или необработанное исключение).
Я бы определенно оценил некоторые идеи о том, как достичь этого.
Редактировать: Мне нужна услуга, потому что я выполняю пакет SSIS через dtexec() и командный файл в C#. Должны произойти и другие события, такие как ведение журнала в dbase и управление очередями.
Каждая работа имеет разную длину, некоторые из них будут завершены через несколько минут, другие - 5 часов.
Почему вы хотите остановить службу, а не просто прекратить ее обработку? –
Если второй процесс зависит от первого, тогда нет смысла даже пытаться запустить второй процесс до завершения первого процесса. Если два процесса полностью независимы друг от друга и не используют одни и те же данные, то есть Database обновления таблиц, вставки, удаления и т. д. ... тогда звучит так, как будто вам нужно будет запустить первый процесс, пока он не будет полностью завершен. – MethodMan
Нет необходимости в услуге. Просто назначьте задачу. Он будет работать до конца –