blockPosition = getLeastBlockPosition(getLeastBlockPosition(fileChannel.size())); //position()方法获取FileChannel的当前位置 Block block = new Block(blockPosition, dataCache.dataBuffer.position()); block.size = 10; blockMap.get(queueName).add(block); dataCache.dataBuffer.flip(); fileChannel.position(blockPosition); fileChannel.write(dataCache.dataBuffer); dataCache.dataBuffer.clear();