I'm having a problem reloading my wicket application only when running on
Windows (this doesn't happen on my Mac).  From what I can tell it looks like
the problem lies in FileCleaner.  When hot deploying (that is, copying a new
war file over the existing war file) Tomcat's output hangs with "Deploying
web application archive yourapp.war"

Pressing control-break shows the thread dump with this is at the top:

"File Reaper" daemon prio=10 tid=0x0340d248 nid=0xafc in Object.wait()
[0x043cf000..0x043cfae8]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x25db6740> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
        - locked <0x25db6740> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)
        at
org.apache.wicket.util.file.FileCleaner$1.run(FileCleaner.java:61)


That line in wicket 1.3-beta2 is "q.remove()" where q is the ReferenceQueue. 
What I think is happening is that the reaper thread is being interrupted via
the destroy() method and that exception is caught and ignored -- instead the
reaper thread's run() method should exit.

Thoughts?
-- 
View this message in context: 
http://www.nabble.com/Does-FileCleaner.destroy-stop-the-reaper-thread--tf4342035.html#a12368920
Sent from the Wicket - Dev mailing list archive at Nabble.com.

Reply via email to