code: public void startup() {
  
      if (this.shutdown) {
        throw new NlsIllegalStateException();
      }
      synchronized (this) {
        if (this.active) {
          return;
        }
        LOG.info("starting " + getThreadName() + "...");
        Thread thread = new Thread(this);
        thread.setName(getThreadName());
        this.executor.execute(thread); // NOSONAR
        this.active = true;
      }
    }
docs: This method will initialize and startup this refresher. On the first call of this method a new thread will be
  started, that periodically performs a refresh. <br>
  Multiple calls of this method have no further effect unless the refresher is {@link #close() closed}. <br>
  <b>NOTE:</b><br>
  This is intentionally NOT performed automatically via
  {@link net.sf.mmm.util.component.base.AbstractComponent#initialize()} so the startup only happens if explicitly
  required and not accidently because this component if found and managed by some container.