@SuppressWarnings("unsafeThreadSchedule")
    ScheduledFuture<?> scheduleWithFixedDelay(
        final Runnable task, final long initialDelay, final long delay, final TimeUnit unit) {
      if (!isShutdown()) {
        synchronized (this) {
          if (!isShutdown()) {
            return ((ScheduledExecutorService) this.executor)
                .scheduleWithFixedDelay(task, initialDelay, delay, unit);
          }
        }
      }

      LOGGER.warn("{} has not been launched, ignore scheduleWithFixedDelay for task", this.name);
      return null;
    }
Downstream Data Flow Executor: execute poll task
iotdb-client/session/src/main/java/org/apache/iotdb/session/subscription/consumer/base/SubscriptionExecutorServiceManager.java