gpt4 book ai didi

java - 延迟任务:scheduler first execution in Spring 3

转载 作者:IT老高 更新时间:2023-10-28 13:57:02 32 4
gpt4 key购买 nike

我有一个使用 Spring 3 进行依赖注入(inject)的简单应用程序。我有一个供用户查看的 JFrame 和一些用于与后端服务器同步和本地数据库维护的后台任务。

这是我的应用程序上下文的相关部分:

<task:scheduler id="scheduler" pool-size="1"/>
<task:scheduled-tasks scheduler="scheduler">
<task:scheduled ref="synchronizer" method="incrementalSync" fixed-delay="600000"/>
... more tasks ...
</task:scheduled-tasks>

<bean id="mainFrame" class="nl.gdries.myapp.client.ui.MainFrame">
... properties and such ...
</bean>

当我启动这个 applicationContext 时,即使我的 UI 正在加载,调度程序也会立即开始执行后台任务。因为第一个任务在开始时相当繁重,所以我希望它等待 UI 完全加载并显示,然后再开始执行。

有谁知道如何告诉 Spring 延迟执行计划任务,直到我选择的时刻?

最佳答案

这似乎已被排除在 <task:scheduled> 之外。 bean 定义,这是我上周才注意到的。

但请记住,<task:...>定义只是快捷方式,您始终可以使用显式方法,通过定义 ScheduledExecutorFactoryBean , 嵌套 ScheduledExecutorTask bean 。这为您提供了更精细的控制,包括 initialDelay .

关于java - 延迟任务:scheduler first execution in Spring 3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2080717/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com