Thread Shutdown

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.

Stuart