|This article does not cite any references or sources. (November 2010)|
|Developer(s)||Apache Software Foundation|
|License||Apache License 2.0|
Daemon provides a portable means of starting and stopping a Java Virtual Machine (JVM) that is running server-side applications. Such applications often have additional requirements compared to client-side applications. For example, the servlet container Tomcat 4 would need to serialize sessions and shutdown web applications before the JVM process terminates.
Daemon comprises 2 parts: a native library written in C that interfaces with the operating system, and the library that provides the Daemon API, written in Java.
There are two ways to use Commons Daemon: by implementing the daemon interface or by calling a class that provides the required methods for daemon. For example, Tomcat-4.1.x uses the daemon interface and Tomcat-5.0.x provides a class whose methods are called by JSVC directly.