CVS update: JGroups/src/org/jgroups/protocols DAISYCHAIN.java
"Bela Ban" <[email protected]>
| Newsgroups | gmane.comp.java.javagroups.cvs |
|---|---|
| Message-ID | <[email protected]> |
User: belaban
Date: 10/08/23 16:54:38
Modified: src/org/jgroups/protocols DAISYCHAIN.java
Log:
moved forwarding of message out of lock scope
Revision Changes Path
1.8 +8 -4 JGroups/src/org/jgroups/protocols/DAISYCHAIN.java
Index: DAISYCHAIN.java
===================================================================
RCS file: /cvsroot/javagroups/JGroups/src/org/jgroups/protocols/DAISYCHAIN.java,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- DAISYCHAIN.java 23 Aug 2010 16:28:57 -0000 1.7
+++ DAISYCHAIN.java 23 Aug 2010 16:54:38 -0000 1.8
@@ -22,7 +22,7 @@
* send another message. This leads to much better throughput, see the ref in the JIRA.<p/>
* JIRA: https://jira.jboss.org/browse/JGRP-1021
* @author Bela Ban
- * @version $Id: DAISYCHAIN.java,v 1.7 2010/08/23 16:28:57 belaban Exp $
+ * @version $Id: DAISYCHAIN.java,v 1.8 2010/08/23 16:54:38 belaban Exp $
*/
@Experimental @Unsupported
@MBean(description="Protocol just above the transport which disseminates multicasts via daisy chaining")
@@ -160,9 +160,12 @@
protected Object forward() {
+ Message msg=null;
+
lock.lock();
try {
- Message msg=forward? forward_queue.poll() : send_queue.poll();
+ String tmp=forward? " forwarding" : " sending";
+ msg=forward? forward_queue.poll() : send_queue.poll();
if(msg == null) {
msg=forward? send_queue.poll() : forward_queue.poll();
msgs_sent++;
@@ -172,14 +175,15 @@
}
if(log.isTraceEnabled()) {
DaisyHeader hdr=(DaisyHeader)msg.getHeader(getId());
- log.trace(local_addr + ": " + (forward? " forwarding" : " sending") + " message with ttl=" + hdr.getTTL() + " to " + next);
+ log.trace(local_addr + ": " + tmp + " message with ttl=" + hdr.getTTL() + " to " + next);
}
- return down_prot.down(new Event(Event.MSG, msg));
}
finally {
forward=!forward;
lock.unlock();
}
+
+ return msg != null? down_prot.down(new Event(Event.MSG, msg)) : null;
}
------------------------------------------------------------------------------
This SF.net email is sponsored by
Make an app they can't live without
Enter the BlackBerry Developer Challenge
http://p.sf.net/sfu/RIM-dev2dev