Lorin Metzger wrote:
Eelco Hillenius wrote:Hi, I created a separate IRequestTarget, that returned NULL for getLock(RequestCycle), to handle a new push behavior. I've verified that the un-synchronized doProcessEventsAndRespond(processor); is called in RequestCycle.java line 884 Wicket 1.2.1. by calling Thread.dumpStack(). Unfortunately all subsequent requests are still being blocked when I block the thread that handles my behavior. I spun off a separate thread in my application that dumps the stack of all active threads, as far as I can tell all subsequent requests are being blocked in Session.getPage(...). line 404. This is the relevant code in Session.java: Thread t = (Thread)usedPages.get(id); while (t != null && t != Thread.currentThread()) { try { wait(1000); } catch (InterruptedException ex) { throw new WicketRuntimeException(ex); } t = (Thread)usedPages.get(id); } I'm guessing that the Thread returned by usedPages.get(id) is actually the initial Thread that I blocked for my PushBehavior. So t will never == Thread.currentThread() or null until I release that Thread? Does the fact that the Thread used to handle my Behavior (appears to be) is in usedPages indicate that I have done something horribly wrong? Thanks, -Lorin |
------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________ Wicket-user mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/wicket-user
