m_logger.output("worker " + m_workers[workerIndex].getName() +
m_logger.output("worker " + m_workers[workerIndex].getIdentity().getName() +
  public boolean startSomeWorkers(int numberOfWorkers)    throws EngineException {    final int numberToStart =      Math.min(numberOfWorkers, m_workers.length - m_nextWorkerIndex);    for (int i = 0; i < numberToStart; ++i) {      final int workerIndex = m_nextWorkerIndex;      synchronized (m_workers) {        m_workers[workerIndex] = m_workerFactory.create(System.out, System.err);      }      m_logger.output("worker " + m_workers[workerIndex].getName() +                      " started");      try {        m_kernel.execute(new WaitForWorkerTask(workerIndex));      }      catch (Kernel.ShutdownException e) {        m_logger.error("Kernel unexpectedly shutdown");        e.printStackTrace(m_logger.getErrorLogWriter());        return false;      }      ++m_nextWorkerIndex;    }    return m_workers.length > m_nextWorkerIndex;  }