当前位置: 首页 > 知识库问答 >
问题:

Java在延迟多天后执行代码

庾远航
2023-03-14

我想和JDA做一个不和谐的赠品机器人。对我来说,在文件或其他地方保存条目是没有问题的,但是如何在3天后选择获胜者呢?它听起来不是很有效,使用定时器任务或保存到一个文件中的日期,并检查它每发送消息?

你不需要给我一个代码示例,但是一个简短的解释就足够了

共有1个答案

鄢朝斑
2023-03-14

您可以制定一个计划,每隔X分钟运行一次检查,并将其存储在数据库中。我已经用这个代码做了。它通过Google计划任务管理器运行。(com.google.common.util.concurrent.ThreadFactoryBuilder)。

它运行“任务”包中的任务。它们通过作业任务中的通用包运行,作业在其中定义运行的时间和延迟。

它还使用自定义数据库系统来获取所需的信息。但是你可以用你自己的系统。这应该能让你大致了解它是如何工作的。

 类似资料:
  • 我想在我的小部件构建完成后,在一定的延迟后执行一个函数。在Flatter中,这样做的惯用方法是什么? 我试图实现的是:我想从默认的FlutterLogo小部件开始,然后在一段时间后更改其样式属性。

  • 问题内容: 是否有任何类似于jQuery的JavaScript方法或(将脚本的执行延迟特定时间)? 问题答案: 有以下内容: 可以在执行该功能之前经过的时间。

  • 问题内容: 运行上面的代码后,未执行,我的意思是文本字段未将其文本设置为“ START”, 为什么? 如何解决呢? 问题答案: 请记住,该按钮在JavaFX线程上被调用,因此您实际上将UI线程暂停了5秒钟。在这五秒钟的末尾取消冻结UI线程时,将同时应用这两个更改,因此最终只能看到第二个。 您可以通过在新线程中运行以上所有代码来解决此问题:

  • 当我像这样定义和调用客户机方法时: 关于更多上下文:在我的例子中,我只希望在CacheFlux onCacheMissResume被触发时执行它:

  • 最初,我在运行拓扑时只分配了1个executor给QueryNormalizer。执行潜伏期为8.952,处理潜伏期为12.857。 为了更快,我将QueryNormalizer中的执行程序数更改为4。执行延迟更改为197.616,处理延迟更改为59.132。 根据执行延迟的定义-元组在执行方法中花费的平均时间。execute方法可以在不发送元组的Ack的情况下完成。 此外,处理延迟是否应始终低于

  • 我正在尝试用Java做一些事情,我需要在while循环中等待/延迟几秒钟。 我想构建一个step sequencer,我是Java新手。有什么建议吗?