mSelector.wakeup();
wakeupSelector();
    public void shutdown() {        if (mLog.isDebugEnabled()) mLog.debug("server shutdown requested");        synchronized (this) {            mShutdownRequested = true;        }        mSelector.wakeup();                synchronized (mShutdownCompleteCondition) {            while (!mShutdownComplete) {                try {                    mShutdownCompleteCondition.wait();                } catch (InterruptedException ie) {                    mLog.warn("exception occurred while waiting for shutdown", ie);                }            }        }    }