Terminando tarefa com Quartz

Alguem teria uma ideia como eu poderia resolver o termino de uma tarefa com quartz, pois o que está ocorrendo.

Fiz um programa simples que conta até mil, e que rode de segundo em segundo, mas quando o CronTrigger dispara novamente para a execução de uma nova tarefa, o quartz começa a concorrer com o processo anterior que ainda estava em execução e assim por diante.

A minha pergunta é existe alguma maneira de empilhar as atividades caso a anterior ainda não tenha sido concluída.

Obrigado pela ajuda.

Maneira simples? Flags. Enquanto o processo estiver rodando, ele aciona a flag, e com isso os outros processos rodam concorrentemente esperando a flag ser liberada, quando liberada, continua o processo.

Até!

Esta tecnica se chama Semaforo, assim eu sei que é possivel resolver mas o que eu gostaria seria uma maneira implementada pelo proprio quartz.

Então veja a documentação. Na parte de FAQ, tem a parte “Questions about Jobs” e “Questions about Triggers”. Nelas você tem sua resposta de uma maneira mais bonita.

Documentação é meu salvador e informação não me faltarás.

Até!

Valeu pela ajuda. Mas não consegui encontrar nada lá. Mesmo assim continuarei procurando.

Se você quer evitar que dois Jobs executem ao mesmo tempo: http://www.opensymphony.com/quartz/wikidocs/FAQ.html#FAQ-stateful
Se você quer fazer uma cadeia de execução, um Job só executa quando outro terminar: http://www.opensymphony.com/quartz/wikidocs/FAQ.html#FAQ-chain

O que você não achou lá?

Até!

Obrigado pela ajuda mais uma vez, para resolver o meu problema utilizei um listener JobListener.