public void batchFlush(MsgFileStore msgFileStore,
            StringBuilder strBuffer) throws Throwable {
        if (this.curMessageCount.get() == 0) {
            return;
        }
        ByteBuffer tmpIndexBuffer = this.cachedIndexSegment.asReadOnlyBuffer();
        final ByteBuffer tmpDataReadBuf = this.cacheDataSegment.asReadOnlyBuffer();
        tmpIndexBuffer.flip();
        tmpDataReadBuf.flip();
        long startTime = System.currentTimeMillis();
        msgFileStore.appendMsg(true, startTime, strBuffer, curMessageCount.get(),
                cacheIndexOffset.get(), tmpIndexBuffer, cacheDataOffset.get(),
                tmpDataReadBuf, leftAppendTime.get(), rightAppendTime.get());
        BrokerSrvStatsHolder.updDiskSyncDataDlt(System.currentTimeMillis() - startTime);
    }
Batch flush memory data to disk.

@param msgFileStore    the file storage
@param strBuffer       the message buffer
@throws IOException    the exception during processing
inlong-tubemq/tubemq-server/src/main/java/org/apache/inlong/tubemq/server/broker/msgstore/mem/MsgMemStore.java