code: public boolean isRunning() {
  
          if (m_lastLogErrorTime <= 0) {
              m_lastLogErrorTime = System.currentTimeMillis();
              m_lastLogWarnTime = m_lastLogErrorTime;
          } else {
              long currentTime = System.currentTimeMillis();
              if ((currentTime - m_lastLogWarnTime) > 30000) {
                  // write warning to log after 30 seconds
                  if (LOG.isWarnEnabled()) {
                      LOG.warn(
                          Messages.get().getBundle().key(
                              Messages.LOG_WAITING_ABANDONED_THREADS_2,
                              new Integer(m_abandonedCounter),
                              new Integer((m_startedCounter - m_returnedCounter))));
                  }
                  m_lastLogWarnTime = currentTime;
              }
              if ((currentTime - m_lastLogErrorTime) > 600000) {
                  // write error to log after 10 minutes
                  LOG.error(
                      Messages.get().getBundle().key(
                          Messages.LOG_WAITING_ABANDONED_THREADS_2,
                          new Integer(m_abandonedCounter),
                          new Integer((m_startedCounter - m_returnedCounter))));
                  m_lastLogErrorTime = currentTime;
              }
          }
  
          boolean result = (m_returnedCounter + m_abandonedCounter) < m_startedCounter;
          if (result && LOG.isInfoEnabled()) {
              // write a note to the log that all threads have finished
              LOG.info(Messages.get().getBundle().key(Messages.LOG_THREADS_FINISHED_0));
          }
          return result;
      }
docs: Returns if the indexing manager still have indexing threads.<p>
  
  @return true if the indexing manager still have indexing threads