如何将消息发送到在另一个处理程序中创建的时间通道?

时间:2018-01-19 12:15:05

标签: java multithreading spring-integration

也许这里有一些“整合模式”,我想念......

我有一个proccess(来自TaskExecutor的一个线程),有些情况需要停止并等待其他数据继续。

我正在考虑在接收方法中阻塞,但是我没有找到如何从一个不同的线程向该通道发送消息(一个临时的,不是吗?)来解除阻塞这个线程,只有这个

负责解锁的组件应该从某种Messagin平台(redis,rabbit,...)接收消息,然后“通知”被阻止的执行。

丑陋的实现可能是等待/通知,但当然我不想使用具有完整“面向消息”的解决方案。

这个问题是否有任何组件/解决方案? 也许订阅者有一些主题,我可以用来确保只有thead ir再次运行,但我不能阻止在publishsubscribe频道,我可以吗?

非常感谢,

1 个答案:

答案 0 :(得分:1)

  

有些情况需要停止并等待其他数据继续。

看起来这确实是Thread Barrier组件的用例。

执行类似操作的另一种方法是将releaseStrategy Aggregator作为2个邮件大小。

无论如何,correlationKey是两个用例中的关键实体。

相关问题