You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ma...@apache.org on 2016/06/01 22:31:34 UTC
svn commit: r1746509 -
/tomcat/trunk/java/org/apache/tomcat/util/net/AprEndpoint.java
Author: markt
Date: Wed Jun 1 22:31:34 2016
New Revision: 1746509
URL: http://svn.apache.org/viewvc?rev=1746509&view=rev
Log:
Follow-up to r1746503. Need to return used SocketProcessors to the cache.
Modified:
tomcat/trunk/java/org/apache/tomcat/util/net/AprEndpoint.java
Modified: tomcat/trunk/java/org/apache/tomcat/util/net/AprEndpoint.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/net/AprEndpoint.java?rev=1746509&r1=1746508&r2=1746509&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/util/net/AprEndpoint.java (original)
+++ tomcat/trunk/java/org/apache/tomcat/util/net/AprEndpoint.java Wed Jun 1 22:31:34 2016
@@ -2216,11 +2216,20 @@ public class AprEndpoint extends Abstrac
@Override
protected void doRun() {
- // Process the request from this socket
- SocketState state = getHandler().process(socketWrapper, event);
- if (state == Handler.SocketState.CLOSED) {
- // Close socket and pool
- closeSocket(socketWrapper.getSocket().longValue());
+ try {
+ // Process the request from this socket
+ SocketState state = getHandler().process(socketWrapper, event);
+ if (state == Handler.SocketState.CLOSED) {
+ // Close socket and pool
+ closeSocket(socketWrapper.getSocket().longValue());
+ }
+ } finally {
+ socketWrapper = null;
+ event = null;
+ //return to cache
+ if (running && !paused) {
+ processorCache.push(this);
+ }
}
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org