java - Java中的多个生产者和多个带有单个队列的Java?
问题描述
我有三个生产者 P1、P2、P3 和三个具有单个共享队列的消费者。生产者 P1 将 X1、X2、X3 放入/插入队列,它应该只被消费者 C1 消费,而不是其他消费者(C2,C3)。基本上,消费者 C1 应该只使用生产者 P1 插入的值。同样的规则也适用于其他消费者。C2-> P2 和 C3-> P3。如何在 Java 中解决这个问题。
解决方案
这最终会起作用的方式是会有这样的课程
class Envelope<S, T, M> {
final S sender;
final T topic;
final M message;
...
};
所有发送的消息都将被包装到其中(就像信封中的真实信件一样)并张贴到MailBox
. 邮箱另一端的调度员将查看信封的主题/接收者字段,并应用所需的策略以在正确的上下文(线程)中传递给正确的收件人。
至于自己编码——我只是为了好玩。如果我需要一些快速的东西,我会选择Akka
已经拥有所有必需的原语并使用它们。
推荐阅读
- php - Nginx :只允许从本地主机访问文件夹
- tensorflow - 如何将“TF for Pots”教程中的classify_image_graph_def.pb转换为Qualcomm SNPE教程中的inception_v3_2016_08_28_frozen.pb
- github-pages - 使用自定义域时如何找到 github pages repo?
- javascript - Ipad 横向视图中的内容重叠
- html - Angular/Bootstrap - 带有可切换侧边栏的导航栏
- reactjs - Reactjs:如何使用 Reactjs 在弹出按钮单击时从数据库中正确获取每个用户记录
- java - 如何向外部 Rest Api 发出 Http Post 请求?
- c - 什么是正常的 C getchar/putchar 行为?
- java - 为什么我的旧图标的背景不透明?
- swift - 是否可以让编译器将 VC 名称(来自字符串)视为该 VC 类型?