Reference for unit 'DaemonApp'¶
Daemon (service) application class.
uses
| Used units | Description |
|---|---|
| System | |
| CustApp | Custom application class. |
| Classes | |
| sysutils | |
| EventLog | Unit implementing system log class. |
| rtlconsts | Constant strings for messages. |
Overview¶
The daemonapp unit implements a TApplication class which encapsulates a daemon or service application. It handles installation where this is necessary, and does instantiation of the various daemons where necessary.
The unit consists of 3 separate classes which cooperate tightly:
- TDaemon
- This is a class that implements the daemon's functionality. One or more descendents of this class can be implemented and instantiated in a single daemon application. For more information, see TDaemon.
- TDaemonApplication
- This is the actual daemon application class. A global instance of this class is instantiated. It handles the command-line arguments, and instantiates the various daemons. For more information, see TDaemonApplication.
- TDaemonDef
- This class defines the daemon in the operation system. The TDaemonApplication class has a collection of TDaemonDef instances, which it uses to start the various daemons. For more information, see TDaemonDef.
As can be seen, a single application can implement one ore more daemons (services). Each daemon will be run in a separate thread which is controlled by the application class.
The classes take care of logging through the TEventLog class.
Many options are needed only to make the application behave as a windows service application on windows. These options are ignored in UNIX-like environment. The documentation will mention this.