Aşağıdaki görev zamanlayıcı kurulum var: Görev sadece bir çizgi yazdırır ve 10 saniye boyunca uyurYay görev zamanlayıcısı neden önceki görevin bitmesini bekler?
<bean id="Task" class="foo.bar.Task" />
<bean id="TaskScheduler"
class="org.springframework.scheduling.concurrent.ThreadPoolTaskScheduler">
<property name="waitForTasksToCompleteOnShutdown" value="true" />
<property name="poolSize" value="1000" />
</bean>
<task:scheduled-tasks scheduler="TaskScheduler">
<task:scheduled ref="Task" method="run" cron="*/5 * * * * *" />
</task:scheduled-tasks>
. Bu kurulumla, benim beklentim, bir önceki görevin infazını bitirip bitirmediğine bakılmaksızın (yani, durdurulan uyku), görevin her 5 saniyede bir çalışacağıydı. Ama durum böyle değil, görev 15 saniyede bir kez çalışıyor (uyku zamanı ve daha sonra cron vurulduğunda).
Bir önceki uygulamanın bitip bitmediğine bakılmaksızın, görevin her 5 saniyede bir çalışmasını sağlamak için bunu nasıl yapılandırabilirim?
Cevabınız için teşekkür ederiz. _ @ Async_ çalışır. TimerFactoryBean kullanımdan kaldırıldı, bu yüzden kullanmak istemiyorum. Kural olarak, yay kodunu/ek açıklamaları kodumdan uzak tutmak isterim. _ @ Async_ eşdeğeriyle yapılandırmanın bir yolu var mı? – GuerillaNerd
Evet, bazı yapılandırma ve olası java sınıflarını ekledim. – Suranga