Re: Thread Shutdown

Hi,

There is something in the mail archive related to this. (http://my.unidata.ucar.edu/cgi-bin/getfile?file=/content/support/help/MailArchives/visad-list/msg04606.html)

It seems that putting a delay between the destroys and the stopThreadPool() might help.

Doug

Bill Hibbard wrote:
Hi Stuart,


Hi, I am new to visad but am enjoying using it, except for a lack of
understanding in the thread model.

I am doing some offscreen image creation using DisplayImpl.getImage(true),
have added data for a number of FlatFields.  The images come out great.
I should point out that I am using the same DisplayImpls over and over for
all images.  I'm using just 2D rendering.

However, when I want to shutdown the visad part of my app, sometimes it
hangs.  I'm doing this:

displayImplA.destroy();
displayImplB.destroy();
ActionImpl.stopThreadPool();

sometimes these three lines return OK.  Sometimes I get an exception
mentioning a task queue (??) and sometimes it just hangs.  This is bad,
since I run this job as a cron and the app must exit after it has done.

Any help very gratefully appreciated.  I apologise of this is  FAQ, I
couldn't locate it.  On  a broader note, how many threads should I expect
if using two DisplayImpls.


Its not a FAQ - we've never seen this problem before.

We do need more information. Specifically, a stack dump with
line numbers for the Exception. And if you can get it to hang
while running under jdb, the output of 'where all' once it
hangs (as I recall, you need to run 'suspend all' before you
run 'where all').

Cheers,
Bill

--
*----------------------------------------------------------------------*
| Doug Lindholm, Software Engineer          |  E-mail: lind@xxxxxxxx   |
| Unidata Program Center                    |   Phone: 303-497-8659    |
| UCAR Office of Programs                   |                          |
| P.O. Box 3000                             |     There's no place     |
| Boulder, Colorado 80307-3000              |        like $HOME        |
*----------------------------------------------------------------------*