User: jules_gosnell
Date: 02/02/15 17:04:32
Modified: jetty/src/main/org/jboss/jetty/util
AbstractTimeOutManager.java
NaiveTimeOutManager.java
Log:
prevent deregistered items from being reregistered by sweeper thread
Revision Changes Path
1.5 +2 -2
contrib/jetty/src/main/org/jboss/jetty/util/AbstractTimeOutManager.java
Index: AbstractTimeOutManager.java
===================================================================
RCS file:
/cvsroot/jboss/contrib/jetty/src/main/org/jboss/jetty/util/AbstractTimeOutManager.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- AbstractTimeOutManager.java 14 Feb 2002 01:03:16 -0000 1.4
+++ AbstractTimeOutManager.java 16 Feb 2002 01:04:32 -0000 1.5
@@ -5,7 +5,7 @@
* See terms of license at gnu.org.
*/
-// $Id: AbstractTimeOutManager.java,v 1.4 2002/02/14 01:03:16 jules_gosnell Exp $
+// $Id: AbstractTimeOutManager.java,v 1.5 2002/02/16 01:04:32 jules_gosnell Exp $
//------------------------------------------------------------------------------
@@ -18,7 +18,7 @@
{
public void register(Object object, long now, long maxInactiveInterval);
public void reregister(Object object, long now, long maxInactiveInterval);
- public void deregister(Object object);
+ public boolean deregister(Object object);
public interface
TimeOutHelper
1.8 +11 -4
contrib/jetty/src/main/org/jboss/jetty/util/NaiveTimeOutManager.java
Index: NaiveTimeOutManager.java
===================================================================
RCS file:
/cvsroot/jboss/contrib/jetty/src/main/org/jboss/jetty/util/NaiveTimeOutManager.java,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- NaiveTimeOutManager.java 14 Feb 2002 01:03:17 -0000 1.7
+++ NaiveTimeOutManager.java 16 Feb 2002 01:04:32 -0000 1.8
@@ -5,7 +5,7 @@
* See terms of license at gnu.org.
*/
-// $Id: NaiveTimeOutManager.java,v 1.7 2002/02/14 01:03:17 jules_gosnell Exp $
+// $Id: NaiveTimeOutManager.java,v 1.8 2002/02/16 01:04:32 jules_gosnell Exp $
//------------------------------------------------------------------------------
@@ -115,11 +115,14 @@
}
}
- public synchronized void
+ public synchronized boolean
deregister(Object object)
{
Entry p=find(object);
+ if (p==null)
+ return false;
+
synchronized (_entries) {
_entries.remove(p);
@@ -130,14 +133,18 @@
_sweeper=null; // cut it loose to finish by itself - dangerous ? -
TODO
}
}
+ return true;
}
public synchronized void
reregister(Object object, long timeRegistered, long maxInactiveInterval)
{
// could be optimised - but this is simpler for the moment...
- deregister(object);
- register(object, timeRegistered, maxInactiveInterval);
+ synchronized (_entries)
+ {
+ if (deregister(object))
+ register(object, timeRegistered, maxInactiveInterval);
+ }
}
// utils...
_______________________________________________
Jboss-development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-development