@Override
    public Thread newThread(Runnable r) {
      Thread thread =
        new Thread(r, threadPrefix + THREAD_NAME_SUFFIX + threadNumber.getAndIncrement());
      thread.setDaemon(true);
      return thread;
    }
Custom ThreadFactory used with the ScheduledThreadPoolExecutor so that all the threads are
daemon threads, and thus, don't prevent the JVM from shutting down
hbase-common/src/main/java/org/apache/hadoop/hbase/ChoreService.java