@Override public synchronized void start() { if (live) { return; } if (!serverSocketChannel.isOpen()) { throw new IllegalStateException("ConnectionManager is already shutdown. Cannot start!"); } live = true; logger.finest("Starting ConnectionManager and IO selectors."); ioThreadingModel.start(); startAcceptorThread(); }