Wow, now i see the leak!

Embedded_ServerConnection extends Thread
                           ==============

but you do:

Socket           s = serverSocket.accept();
Embedded_ServerConnection c = new Embedded_ServerConnection(s, this);
                               =======================================

Thread thread = new Thread(c);
                 =============
thread.start();

So you got two instances of Thread, only one of which is started,
with the "inner" one only playing the role of a runnable!

Afterward closing you loose every reference to the inner (never started)
thread, and the java jvm, due to a bug/feature never garbage-collects
it (and its socket?).

If there is no other usage of Embedded_ServerConnection we could
simply let it implement Runnable instead of extending Thread,
or otherwise not encapsulate it in a Thread afterwards.

What is the best way to change the codebase? Another
patch for hsqldb?

Regards,
Michael



-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
_______________________________________________
Jboss-development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to