【发布时间】:2022-01-22 03:22:43
【问题描述】:
在轮询所有消息并尝试将它们附加到文本文件后,文本文件仍然是空白的。
我也试过PrintWriter的写和打印功能,没用。
代码:
PrintWriter recordsFile = new PrintWriter("./recordsFile.txt");
while (some condition) {
kafkaConsumer.poll(Duration.ofMillis(100)).forEach(consumerRecord -> {
recordsFile.append(consumerRecord + "\n");
System.out.println(consumerRecord);
});
}
recordsFile.flush();
recordsFile.close();
在上面的代码中,记录被打印到控制台,这意味着投票成功。那为什么文件还是空白呢?
我的猜测是 poll 操作启动了一个单独的线程,你认为这里的问题是什么?
请注意,我已经处理了 FileNotFoundException 的可能性,订阅了一个主题等。我省略了这些细节以专注于我面临的问题。
【问题讨论】:
标签: java apache-kafka kafka-consumer-api