Chronicle 历史记录队列-接收周期的最后索引

Chronicle 历史记录队列-接收周期的最后索引,chronicle,chronicle-queue,Chronicle,Chronicle Queue,我试图使用历史记录队列来确定当前周期的最后一个索引。 在删除循环中的单个cq4之前,我将使用开始索引和最后一个索引进行最终检查 我希望能够找到一个循环的最后一个索引,而无需遍历每个记录。这可能吗 或 有没有一种方法可以在不实际读取记录的情况下将尾随者移动到下一个索引,并且可以在多个周期内滚动 您可以从末尾向后读取,并查看循环编号,直到达到目标循环的最后一条记录。一旦进入目标周期,查看索引,这将告诉您该周期的最后一个索引 或 你可以用一些摘录 net.openhft.chronicle.queue

我试图使用历史记录队列来确定当前周期的最后一个索引。 在删除循环中的单个cq4之前,我将使用开始索引和最后一个索引进行最终检查

我希望能够找到一个循环的最后一个索引,而无需遍历每个记录。这可能吗

有没有一种方法可以在不实际读取记录的情况下将尾随者移动到下一个索引,并且可以在多个周期内滚动

  • 您可以从末尾向后读取,并查看循环编号,直到达到目标循环的最后一条记录。一旦进入目标周期,查看索引,这将告诉您该周期的最后一个索引
  • 你可以用一些摘录
  • net.openhft.chronicle.queue.impl.single.singlechronicle队列#计数摘录(从索引到索引)

    其中:

    fromIndex=目标周期的第一个索引

    toIndex=下一个周期的第一个索引


    这将给你在目标循环中的消息数量,你可以认为这是序列号,然后你只需使用队列.RelixCyter()toToindex(TraceCurror,SuthCuNeNoNoMe)来计算它的索引;p> 可能不是最好的方法……但我使用了Long IndexOfNextCycle=RollCycle.toIndex(queue.nextCycle(tailer.cycle(),TailerDirection.FORWARD),0);这找到了下一个周期的第一个索引。。。。然后我倒过来,回去读另一个值。这会给我这个周期的最后一个索引。谢谢你的帮助。我最初想出了第一种方法,但我认为第二种更简洁。正在更新。