Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何轻松设置同时安排的任务?Cron Java_Java_Cron_Quartz Scheduler_Simultaneous_Crontrigger - Fatal编程技术网

如何轻松设置同时安排的任务?Cron Java

如何轻松设置同时安排的任务?Cron Java,java,cron,quartz-scheduler,simultaneous,crontrigger,Java,Cron,Quartz Scheduler,Simultaneous,Crontrigger,我无法同时执行两项任务 我有一个界面: import org.springframework.scheduling.TaskScheduler; import org.springframework.scheduling.Trigger; public interface ScheduledTask extends Runnable { public void schedule(final TaskScheduler taskScheduler, final Trigger trigger

我无法同时执行两项任务

我有一个界面:

import org.springframework.scheduling.TaskScheduler;
import org.springframework.scheduling.Trigger;

public interface ScheduledTask extends Runnable {
  public void schedule(final TaskScheduler taskScheduler, final Trigger triggerInterval);
}
还有两个类似的类,我称之为MyTaskOne和MyTask2,它们都类似于:

@Component
@ApplicationScoped
public class MyTaskOne implements ScheduledTask  {
  public TaskOne(final TaskScheduler taskScheduler) {
    this.scheduler(agendadorDeTarefas, new CronTrigger("0 */31 * * * ?"));
    }
}

@Override
public void run() {
      //Bla bla bla
}

@Override
public void scheduler(final TaskScheduler taskscheduler, final Trigger triggerInterval) {
    taskscheduler.schedule(this, triggerInterval);
}
除了run()的内容外,MyTaskOne和MyTaskTwo的区别在于cron间隔,MyTaskOne是(“0*/31***?”),MyTaskTwo是(“0*/37***?”)

现在发生的是MyTaskOne先初始化,MyTaskOne完成后才初始化MyTask2,我想同时运行这两个任务,如何轻松设置

服务器具有ApacheTomcat6


感谢您的帮助,并为您的语法错误感到抱歉

使用线程解决

以ScheduledTask和Runnable的形式执行任务

使用带有信号量的线程进行控制效果非常好