Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/395.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
Java 带延迟的Springboot事件发布程序_Java_Spring_Spring Boot_Event Handling - Fatal编程技术网

Java 带延迟的Springboot事件发布程序

Java 带延迟的Springboot事件发布程序,java,spring,spring-boot,event-handling,Java,Spring,Spring Boot,Event Handling,我正在使用spring事件发布事件,但我希望我的侦听器延迟接收已发布的消息(以便等待我的程序完成某些任务) 有没有办法设置一个延迟来接收我最近的活动 (我做了一些研究,但只有active mq似乎有延迟选项,但我不想在我的应用程序中创建真正的队列,只想创建事件驱动模式,也不想配置spring集成)如果我正确理解您的意图,你通过延迟事件来防御性地编写代码,以免让你的听众不知所措。尝试使用反应式编程结构,例如ProjectReactor提供的结构,它们带有内置的背压,专门用于解决生产者-消费者问题

我正在使用spring事件发布事件,但我希望我的侦听器延迟接收已发布的消息(以便等待我的程序完成某些任务)

有没有办法设置一个延迟来接收我最近的活动


(我做了一些研究,但只有active mq似乎有延迟选项,但我不想在我的应用程序中创建真正的队列,只想创建事件驱动模式,也不想配置spring集成)

如果我正确理解您的意图,你通过延迟事件来防御性地编写代码,以免让你的听众不知所措。尝试使用反应式编程结构,例如ProjectReactor提供的结构,它们带有内置的背压,专门用于解决生产者-消费者问题

你延期的目的是什么?如果希望等待主线程,则首先完成任务,然后发布事件。但是,如果您需要异步执行,您可以通过同时使用Spring的
@Async
@EventListener
注释来配置异步事件侦听器。@YavuzTas yes我正在等待任务完成。但这是一个由外部组件完成的任务,我无法控制它,因此我只能延迟自己的任务启动。谢谢,我已经使用webflux,但不知道延迟方法,我现在可以延迟我的任务,没有事件机制!