Quartz.net: избежать огромной базы данных, остановить будущие триггеры, сбросить запланированные задачи - PullRequest
4 голосов
/ 20 октября 2010

Пара вопросов для настоящих Кварцевых гуру!

Я новичок в Quartz.net и надеюсь получить несколько советов, прежде чем сгореть:

1) Я планирую кучурабочих мест / триггеров, чтобы сработать в определенное время в будущем.После того, как эти задачи завершены, я больше не использую информацию о задании / триггере в базе данных.Есть ли что-то, что мне нужно сделать, чтобы избежать огромного накопления базы данных событий Quartz, или они позаботятся о себе и автоматически удалятся?

2) Периодически повторяются мои разные задачи.Но иногда, когда я выполняю реальную работу, я понимаю, что больше не хочу продолжать выполнять периодические события до истечения времени работы.Как мне остановить все будущие триггеры из выполняемого задания?

3) Есть ли способ сбросить все запланированные задачи.Иногда как "scheduler.DumpAll () ;-)"?

Заранее спасибо!

Ответы [ 2 ]

4 голосов
/ 15 марта 2011
  1. См. Ответ от LeftyX (и мой дополнительный комментарий): при нормальных обстоятельствах, когда у триггера больше нет времени срабатывания, он удаляется, а когда у задания больше нет триггеров, оно удаляется

  2. Вы можете использовать scheduler.unschduleJob (), scheduler.deleteJob (), scheduler.pauseJob (), scheduler.pauseTrigger () - в зависимости от конкретного поведения, которое вы на самом деле хотите.

  3. Нет.

1 голос
/ 15 марта 2011

Возможно, я опоздал ;-), но я только недавно начал использовать Quartz.net.Документация гласит:

Durable - if a job is non-durable, it is automatically deleted from the 
scheduler once there are no longer any active triggers associated with it.

, так что вы можете определить Durable = false для своей работы, и его следует удалить по истечении срока действия.

...