code: public static ExecutorService newSingleThreadDaemonExecutor() {
          return Executors.newSingleThreadExecutor(r -> {
              Thread t = Executors.defaultThreadFactory().newThread(r);
              t.setDaemon(true);
              return t;
          });
      }
docs: Creates an Executor that is based on daemon threads.
  This allows the program to quit without explicitly
  calling shutdown on the pool
  
  @return the newly created single-threaded Executor