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/04/14 14:54:16 UTC

svn commit: r647776 - /mina/trunk/core/src/main/java/org/apache/mina/filter/executor/WriteRequestFilter.java

Author: trustin
Date: Mon Apr 14 05:54:13 2008
New Revision: 647776

URL: http://svn.apache.org/viewvc?rev=647776&view=rev
Log:
More documentation

Modified:
    mina/trunk/core/src/main/java/org/apache/mina/filter/executor/WriteRequestFilter.java

Modified: mina/trunk/core/src/main/java/org/apache/mina/filter/executor/WriteRequestFilter.java
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/main/java/org/apache/mina/filter/executor/WriteRequestFilter.java?rev=647776&r1=647775&r2=647776&view=diff
==============================================================================
--- mina/trunk/core/src/main/java/org/apache/mina/filter/executor/WriteRequestFilter.java (original)
+++ mina/trunk/core/src/main/java/org/apache/mina/filter/executor/WriteRequestFilter.java Mon Apr 14 05:54:13 2008
@@ -46,6 +46,18 @@
  *             new WriteRequestFilter(new IoEventQueueThrottle()));
  * </pre>
  *
+ * <h3>Known issues</h3>
+ *
+ * You can run into a dead lock if you run this filter with the blocking
+ * {@link IoEventQueueHandler} implementation such as {@link IoEventQueueThrottle}
+ * in the {@link IoProcessor} thread.  It's because an {@link IoProcessor}
+ * thread is what processes the {@link WriteRequest}s and notifies related
+ * {@link WriteFuture}s; the {@link IoEventQueueHandler} implementation that
+ * waits for the size of the write request queue to decrease will never wake
+ * up.  To use such an handler, you have to insert an {@link ExecutorFilter}
+ * before this filter or call {@link IoSession#write(Object)} method always
+ * from a different thread.
+ *
  * @author The Apache MINA Project (dev@mina.apache.org)
  * @version $Rev$, $Date$
  */