code: private void startupProcessor() {
          Processor processor = processorRef.get();
          if (processor == null) {
              processor = new Processor();
              if (processorRef.compareAndSet(null, processor)) {
                  executor.execute(new NamePreservingRunnable(processor,
                          threadName));
              }
          }
  
          // Just stop the select() and start it again, so that the processor
          // can be activated immediately. 
          wakeup();
      }
docs: Starts the inner Processor, asking the executor to pick a thread in its
  pool. The Runnable will be renamed