问题标签 [spring-scheduled]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
976 浏览

java - Spring Scheduled 注解是如何工作的

我在java中创建了一个函数。该函数应该在每天午夜运行

但我没有按预期工作。有时它执行,有时没有。任何解决方案。

春季版是4

0 投票
1 回答
1613 浏览

java - Spring-boot @Async 未与 @Scheduled 一起运行

我使用了这个教程它是 github 项目作为这个 SSCCE 的基础。

由于未知原因,标记为@Async从方法运行的@Scheduled方法总是同步执行。

我正在寻找修复或解决方法以使代码performTask()异步运行。

下面的类:

应用程序.java

MyAsyncService.java

计划任务.java

产生以下同步结果:

0 投票
3 回答
13043 浏览

java - Spring 调度程序的 cron 表达式 - 每年只运行一次

我的 Spring 服务看起来像

我知道您不能使用为指定年份而保留的第 7 个值。使用表达式我可以告诉 spring 每年在特定时间运行一次,比如 2020 年 12 月 25 日上午 6 点吗?

谢谢

0 投票
2 回答
217 浏览

java - 如何在特定时间定义调度程序?

我想在特定时间定义 spring 调度程序(或石英 cron 调度程序)。

例如,我被指定了应该运行某项工作的特定时间。这些时间是 09:00、12:15、15:35、19:05 所以你可以看到这些时间是随机的。

所以我不能在 cron 中安排它们

有没有其他方法可以在指定的这些时间解雇工作?

0 投票
1 回答
1325 浏览

log4j2 - 为什么 log4j2 TimeBasedTriggeringPolicy 受@Scheduled 影响

我用 TimeBasedTriggeringPolicy 的 Policy 配置了 log4j2,我希望日志文件可以在每天 00:00 滚动到一个 zip 文件中。但它不会发生。

当我添加如下类时,系统会在每天 3 点 15 分创建一个 zip 文件。

log4j2 汇总机制受到 Spring @Schedule 注释的影响,这很奇怪,不是吗?任何人都知道我怎样才能避免这种情况发生?谢谢!

0 投票
1 回答
178 浏览

java - 如何为同一个 Spring Framework @Scheduled 方法创建多个触发器?

目前我们有一个单一的时间表来执行该方法

我们正在寻找一种解决方案,可以在一周中的两个不同时间安排相同的任务,一个计时器用于周一至周六,另一个计时器用于周日。

是否有类似于 JSR-000318 - @Schedules 和 @Schedule 这样的东西?@Schedules( { @Schedule(hour=”11”, dayOfWeek=”Mon-Sat”), @Schedule(hour=”10”, dayOfWeek=”Sun”) }) public void scheduleTask() { ... }

0 投票
1 回答
1706 浏览

java - @scheduled 为 cron 表达式抛出异常

团队,

我已将 cron 表达式放在属性文件中。然后我尝试从 java 文件中引用该 cron 表达式,如图所示。

它向我抛出了以下错误:

我是这个调度程序的新手。请就如何使这个表达式可配置提出建议。

谢谢

0 投票
1 回答
3216 浏览

java - 在启动spring boot服务之前等待依赖加载

我有一个 Spring Boot 应用程序,它有两个 bean -AppStateUsers. AppState取决于bean Users,因为它自动装配它。两个 bean 的骨架代码如下。

AppState

我注意到load()in中的方法Users被触发了两次——可能一次是在创建 bean之后init(),另一次是在调度期间。所以我删除了对in的调用。这解决了冗余呼叫问题。load()Usersload()init()

但是,现在我发现我的服务在创建 bean 后立即启动AppStateUsers即使Users尚未填充数据。这对我来说是有风险的,因为在此期间,如果被查询,服务将返回 0 个用户。

我需要以下任何方面的帮助。

  • 我是否应该load()返回init()以确保 bean 完成后PostConstruct,它确实具有所有用户信息?如果我走这条路,我怎样才能防止冗余运行load()

  • 如果load()要置身事外init(),我怎么能保证AppState不准备好除非Users已经执行load()?我尝试使用以下代码,AppState但它只是挂起。

代码如下。

0 投票
3 回答
1069 浏览

java - 用 Java 开发计划任务并在 Linux 服务器上运行

我想用 Java 开发“任务”,可以按照定义的时间表定期运行。

如何在我的 Linux 服务器上运行它。如果它是一个 jar 文件 - 我创建一个 jar 文件并使用 shell 脚本运行它就足够了吗?并安排运行脚本(CRON)

我打算使用 Spring Framework。我真的需要一个吗?因为我可以安排使用 CRON 调用我的 java 程序

我该如何处理?

0 投票
2 回答
297 浏览

java - spring @Scheduled 任务中的线程保证

我有一个带有两个@Scheduled 方法的类,如下所示。

我正在使用一个有 20 个线程的线程池。现在我在方法中使用了DelayQueue一个阻塞队列run。是否有可能所有 20 个线程都卡在读取队列(当它为空时)并且该fillQueue方法永远不会被执行?