code: public void runAsync ()
    {
      final Thread aThread = new Thread (this::processEvents,
                                         "WatchDir-" + m_aStartDir + "-" + RandomHelper.getRandom ().nextInt ());
      aThread.setDaemon (true);
      aThread.start ();
    }
docs: Call this method to process events. This method creates a background thread
  than runs {@link #processEvents()} and performs the heavy lifting.