2

在哪种情况下,我们通常会使用 PUSH_MODE?通常建议使用 PULL_MODE 交互,但我想知道在哪种情况下我们应该使用 PUSH 模式?

谢谢,

4

1 回答 1

1

首先,它消除了使用try_next_item()or轮询驱动程序实例的需要get_next_item(),从性能的角度来看这是一个胜利。(虽然调用driver.get_next_item()是一个阻塞调用,它应该暂停任何等待序列项的 BFM 线程。)

除了这个(可能是次要的)性能方面,您可能希望重新排序并行序列指定的序列项。从驱动程序出来的序列项的顺序是先进先出。如果您有一个序列项由于死锁原因应该绕过其他项,或者您希望对这些项的处理顺序进行额外的随机化,那么您必须通过将所有项填充到您自己的集合数据结构中来自行管理。

于 2012-07-03T20:27:03.483 回答