code: public void start() {
      syncLock.lock();
      try {
        if (!this.isConfigured) {
          return;
        }
        instanceChangeStreamListener.stop();
        if (listenersEnabled) {
          instanceChangeStreamListener.start();
        }
  
        if (syncThread == null) {
          syncThread = new Thread(
              new DataSynchronizerRunner(
                new WeakReference<>(this),
                networkMonitor,
                logger
              ),
              "dataSynchronizerRunnerThread"
          );
        }
        if (syncThreadEnabled && !isRunning) {
          syncThread.start();
          isRunning = true;
        }
      } finally {
        syncLock.unlock();
      }
    }
docs: Starts data synchronization in a background thread.