docs: private void checkExecutor() {
          if (mExecutor == null || mExecutor.isShutdown()) {
              ExecutorService poolExecutor;
              final String name = "task-queue-" + mMaxThreads;
              switch (mMaxThreads) {
                  case 0:
                      // cached thread pool
                      poolExecutor = ThreadUtils.newCachedThreadPool(name);
                      break;
                  case 1:
                      // single thread mode
                      poolExecutor = ThreadUtils.newSingleThreadExecutor(name);
                      break;
                  default:
                      // fixed thread pool
                      poolExecutor = ThreadUtils.newFixedThreadPool(name, mMaxThreads);
                      break;
  
              }
              mExecutor = poolExecutor;
          }
      }