> > 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
