Прослушивание событий планировщика задач в c#

есть список задач и их графики. Говорят, задача task1 - ежедневно с 12 часов Task2-понедельник, среда-9 вечера Хотел бы уволить их в соответствии с их расписанием.

можно ли зарегистрировать их в планировщике задач или некоторых других планировщиках таймерах в c# с уникальным контекстом-идентификатором задачи. И при обратном вызове (скажем, какое-то событие), можно получить taskid из контекста и с помощью taskid я могу вызвать действия.

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

1 ответов


почему бы вам не попробовать использовать quartz.net. Этот планировщик поддерживает Id задачи и даже контекст планирования. Существует также хорошая документация и множество примеров.

вот пример задачи (он же задание), контекст выполнения-отправка из планировщика.

public class DumbJob : IJob
{
    public DumbJob() {
    }

    public void Execute(JobExecutionContext context)
    {
        Console.WriteLine("DumbJob is executing.");
    }
}

BTW не забудьте сделать планировщик статическим-чтобы избежать сбора мусора. Я уже сталкивался с этой проблемой раньше.