示例#1
0
  /* ------------------------------------------------------------ */
  protected void doStop() throws Exception {
    try {
      close();
    } catch (IOException e) {
      Log.warn(e);
    }

    if (_threadPool == _server.getThreadPool()) _threadPool = null;
    else if (_threadPool instanceof LifeCycle) ((LifeCycle) _threadPool).stop();

    super.doStop();

    Thread[] acceptors = null;
    synchronized (this) {
      acceptors = _acceptorThread;
      _acceptorThread = null;
    }
    if (acceptors != null) {
      for (int i = 0; i < acceptors.length; i++) {
        Thread thread = acceptors[i];
        if (thread != null) thread.interrupt();
      }
    }
  }