You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mina.apache.org by tr...@apache.org on 2008/03/28 16:12:55 UTC

svn commit: r642254 - /mina/trunk/transport-apr/src/main/java/org/apache/mina/transport/socket/apr/AprIoProcessor.java

Author: trustin
Date: Fri Mar 28 08:12:46 2008
New Revision: 642254

URL: http://svn.apache.org/viewvc?rev=642254&view=rev
Log:
Reduced unnecessary system calls related with 'interestedInRead/Write' property in APR transport

Modified:
    mina/trunk/transport-apr/src/main/java/org/apache/mina/transport/socket/apr/AprIoProcessor.java

Modified: mina/trunk/transport-apr/src/main/java/org/apache/mina/transport/socket/apr/AprIoProcessor.java
URL: http://svn.apache.org/viewvc/mina/trunk/transport-apr/src/main/java/org/apache/mina/transport/socket/apr/AprIoProcessor.java?rev=642254&r1=642253&r2=642254&view=diff
==============================================================================
--- mina/trunk/transport-apr/src/main/java/org/apache/mina/transport/socket/apr/AprIoProcessor.java (original)
+++ mina/trunk/transport-apr/src/main/java/org/apache/mina/transport/socket/apr/AprIoProcessor.java Fri Mar 28 08:12:46 2008
@@ -275,6 +275,10 @@
 
     @Override
     protected void setInterestedInRead(AprSession session, boolean value) throws Exception {
+        if (session.isInterestedInRead() == value) {
+            return;
+        }
+
         int rv = Poll.remove(pollset, session.getDescriptor());
         if (rv != Status.APR_SUCCESS) {
             throwException(rv);
@@ -293,6 +297,10 @@
 
     @Override
     protected void setInterestedInWrite(AprSession session, boolean value) throws Exception {
+        if (session.isInterestedInWrite() == value) {
+            return;
+        }
+
         int rv = Poll.remove(pollset, session.getDescriptor());
         if (rv != Status.APR_SUCCESS) {
             throwException(rv);