docs: public File waitForNextFile(File pre) throws InterruptedException {
          try {
              lock.lockInterruptibly();
              if (binlogs.size() == 0) {
                  nextCondition.await();// 等待新文件
              }
  
              if (exception != null) {
                  throw exception;
              }
              if (pre == null) {// 第一次
                  return binlogs.get(0);
              } else {
                  int index = seek(pre);
                  if (index < binlogs.size() - 1) {
                      return binlogs.get(index + 1);
                  } else {
                      nextCondition.await();// 等待新文件
                      return waitForNextFile(pre);// 唤醒之后递归调用一下
                  }
              }
          } finally {
              lock.unlock();
          }
      }