ChronicleQueue - 如何从tailer中读取自定义对象

时间:2018-02-17 18:20:51

标签: chronicle-queue

我是ChronicleQueue的新手,我无法找到一个直接的示例,说明如何从尾标读回我的自定义对象。

public class MyData extends AbstractMarshallable

我的类包含一些字符串和数字,我可以使用appender写入队列,但是没有直接的api可以调用。如何从tailer.readDocument api获取MyData的对象?

1 个答案:

答案 0 :(得分:1)

尝试使用以下代码:

final DocumentContext context = queue.createTailer().readingDocument();
final MyData container = new MyData();
if (context.isPresent()) {
    context.wire().getValueIn().marshallable(container);
}

这假设以下列方式执行追加:

try (DocumentContext ctx = appender.writingDocument()) {
    ctx.wire().getValueOut().marshallable(myData);
}