* 
	 */
	public synchronized void stop() throws IOException, InterruptedException {
        try {
            if(!isRunning())
                return;
            stopped = true;
            selector.stopPollingThread();
        } catch(Throwable e) {
            //there is nothing a client can do to a recover from this so swallow it for them
            log.log(Level.WARNING, "Exception stopping selector", e);
        }
	}