Author: markt
Date: Wed Mar 11 21:06:53 2015
New Revision: 1666013

URL: http://svn.apache.org/r1666013
Log:
Add a placeholder for the descriptor merging that is going to be necessary for 
OSX and BSD.

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=1666013&r1=1666012&r2=1666013&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/util/net/AprEndpoint.java (original)
+++ tomcat/trunk/java/org/apache/tomcat/util/net/AprEndpoint.java Wed Mar 11 
21:06:53 2015
@@ -1759,6 +1759,7 @@ public class AprEndpoint extends Abstrac
                             nextPollerTime += pollerTime;
                         }
                         if (rv > 0) {
+                            rv = mergeDescriptors(desc, rv);
                             pollerSpace[i] += rv;
                             connectionCount.addAndGet(-rv);
                             for (int n = 0; n < rv; n++) {
@@ -1923,6 +1924,21 @@ public class AprEndpoint extends Abstrac
                 this.notifyAll();
             }
         }
+
+
+        private int mergeDescriptors(long[] desc, int startCount) {
+            if (OS.IS_BSD || OS.IS_MACOSX) {
+                // TODO Need to actually implement merging of the descriptors 
here.
+                //      I'm currently thinking quicksort followed by running
+                //      through the sorted list to merge the events.
+                return startCount;
+            } else {
+                // Other OS's do not (as far as it is known) return multiple
+                // entries for the same socket when the socket is registered 
for
+                // multiple events.
+                return startCount;
+            }
+        }
     }
 
 



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to