Я запускаю приложение Spring Boot и пытаюсь запустить два задания с определенной задержкой, используя аннотацию @Scheduled
.
Я хотел бы отменить эти задания программно при определенном условии. Каков рекомендуемый способ сделать это? Ниже приведена конфигурация моего приложения:
Main.java
@SpringBootApplication
@EnableScheduling
public class Main implements CommandLineRunner {
static LocalDateTime startTime = LocalDateTime.now();
public static void main(String[] args) {
SpringApplication app = new SpringApplication(Main.class);
app.setBannerMode(Banner.Mode.OFF);
app.run(args);
}
@Override
public void run(String... args) throws Exception {
}
}
Задание1.java
@Component
public class Job1 {
@Scheduled(fixedDelay = 10000)
public void run() {
System.out.println("Job 1 running");
}
}
Задание 2.java
@Component
public class Job1 {
@Scheduled(fixedDelay = 10000)
public void run() {
System.out.println("Job 2 running");
}
}