我需要在我的应用程序中动态创建任务。我该怎么做?我可以使用 @autowired
注解获取调度程序,但是调度程序需要 Runnable
对象。我需要提供 Spring 对象,以便我的任务也可以使用 @autowired
注解。
@Autowired private TaskScheduler taskScheduler;
我需要在我的应用程序中动态创建任务。我该怎么做?我可以使用 @autowired
注解获取调度程序,但是调度程序需要 Runnable
对象。我需要提供 Spring 对象,以便我的任务也可以使用 @autowired
注解。
@Autowired private TaskScheduler taskScheduler;
你只需要将目标对象包装在一个 Runnable
中,并提交它:
private Target target; // this is a Spring bean of some kind
@Autowired private TaskScheduler taskScheduler;
public void scheduleSomething() {
Runnable task = new Runnable() {
public void run() {
target.doTheWork();
}
};
taskScheduler.scheduleWithFixedDelay(task, delay);
}