public void start() {
    if (!compareAndSetState(State.NEW, State.STARTING)) {
      // If previous state was not NEW, start() has already been called.
      return;
    }
    this.watcherThread.start();
  }
Tells the background thread to start. Does not wait for it to be running. Calling this method
more than once has no effect.
hbase-common/src/main/java/org/apache/hadoop/hbase/io/FileChangeWatcher.java