0

我有一个编年史阅读器(ExcerptTailer),代码如下,

 ChronicleQueue queue = ChronicleQueueBuilder.single(chroniclePath).storeFileListener(new StoreFileListener() {

        @Override
        public void onReleased(int cycle, File file) {
            if (file != null) {
                try {
                    file.delete();
                } catch (Exception e) {
                }
            }
        }
    }).rollCycle(RollCycles.HOURLY).build();
ExcerptTailer excerptTailer = queueForReader.createTailer();

我实现了onRealease删除已完成文件的方法。但我的问题是queue.close()由于方法内部的代码,文件在调用时被删除onRelease。在这种情况下,我怎么能理解文件读取没有在里面完成onReleased?还是有更好的方法来实施我的案例?

4

0 回答 0