final Session session = new Session(this, sessionID, Session.SERVER);
addSession(sessionID, session);
try {
userThreadPool.execute(new Runnable() {
public void run() {
final InboundRequest request = session.getInboundRequest();
try {
AccessController.doPrivileged(securityContext.wrap(
new PrivilegedAction() {
public Object run() {
requestDispatcher.dispatch(request);
return null;
}
}), securityContext.getAccessControlContext());
} finally {
request.abort();
}
}
}, "mux request dispatch");
} catch (OutOfMemoryError e) { // assume out of threads
try {