2014-02-15 31 views
0

我有多个生产者,每个生产者都将数据推入自己的阻塞队列。 来自每个生产者的数据是独立处理的(因此是单独的队列)。Java中的多个生产者单个消费者的软件设计

我的单个消费者当前正在轮询每个队列,每个队列都有一个超时。

程序工作得很好,但我想优化,我不喜欢“投票”。 这是最有效的方法来处理这个问题吗?,

我已经使用每个生产者的消费者编写了相同的应用程序,但该配置文件稍差。

谢谢。

+1

“独立处理”是指什么? – dlev

+2

你能显示代码吗? – unekwu

+0

即使每个生产者都自己处理,你仍然应该能够逃避所有四个生产者推向同一个队列,消费者只需要消费。我纠正每个生产者生成一个完全不同类型的对象?如果是这样,这些对象是否从一个普通的类继承? –

回答

1

尝试将消费者注册为队列中的侦听器,以便队列状态的更改通知消费者而不用主动轮询(控制反转)。

相关问题