|
Thanks for your reply. The source you reference states having the run() method terminate ends the thread. In my run() method I loop until the request is finished, then it falls out of the loop and exits. (I know it is out of the loop from my logger entries.) After the loop I set a public class flag that says the thread is done and the run() method ends. It is my understanding that as long as there is a reference to it, the object is kept around. My routine to 'null' the table entries looks for threads entries with this flag set on. (We are on JVM 1.4.2, so I can't use the new isDead call from 1.5.) My table is limited to 64 entries, so I'm fairly confident that the threads are being 'null'ed correctly, else the table would overflow. > Nulling the threads just removes the references but does not stop the > threads and clean them up. As long as the run() method runs they are > still there > > My guess is that the old not-terminated threads are still lingering > around, and you hit some hard limit for the OS/400 JVM. > > See > http://java.sun.com/docs/books/tutorial/essential/threads/lifecycle.html > under "Stopping a thread" for the proper way to do this. > > -- > Thorbjørn
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.