> > was this not fixed yesterday ?, I got a new class from 
> pierre and put 
> > this in cvs. asked you (kees) if this one was ok now i 
> understand its 
> > not ?. Ifso can someone provide me with a fix so i can update it ?
> >
> > Daniel.
> >
> 
> Call me weird but i don't see this problem and code anywhere 
> in org.mmbase.applications.email.*
> 
> Ill check if a touch works tommorow and provide some more 
> examples. If there is really still a problem can someone 
> point me to the place in the source.

I think the sources are fine. A touch usually means that the application is
changed and that the applications should be redeployed. All user threads
have to be finished before the application can be redeployed. The
EmailExpireHandler is now a daemon thread so this one shouldn't block the
redeployment, when it is in hibernation. The EmailBackgroundHandler is a
user thread, because it does one thing on the behalf of an user and exits.
The EmailBackgroundHandler has to block the redeployment until it is
finished.

So, the main advantage of Daemon threads are that they are automatically
killed by the JVM once no other threads are existing. We don't need to worry
about stopping the Daemon threads. But be careful not to assign any
important tasks in Daemon threads as Daemons may end abruptly without your
consent once all other threads are stopped and thereby creating havoc.

Nico


Reply via email to