Sign in Join
Wiki copytemporary

Daemons and Services/pt

English · Español · Français · Polski · Português · Русский · 中文(中国)

O que são daemons e serviços ?

Daemons Unix e serviços do Windows são programas rodando sem interação do usuário. Por exempo servidores www ou ftp são chamados de daemons no linux e serviços no windows. Porque eles não interagem com o usuário diretamente, eles fecham seus descritores stdin, stdout, stderr quando iniciam.

Com Free Pascal, Lazarus é possível escrever estes daemons/services independente da plataforma através do pacote lazdaemon. Para evitar conflitos de nome com os componentes Delphi os componentes desta classe são chamadas de 'daemons'.

Classes

TCustomDaemon

Este é um descendente do TDataModule que habilita todo o trabalho. Este pode ter diversas classes TCustomDaemons e/ou instâncias executando ao mesmo tempo e no mesmo processo (multi threaded).

TCustomDaemonApplication

Este é um descendente da TCustomApplication que cria os TCustomDaemons. Este não precisa de mudanças. Ele executa no Windows até receber a chamada de Stop (parada) ou no linux até receber o sinal TERM.

TDaemonMapper

Este componente é encarregado do registro do serviço. Cada instância precisa de uma entrada na propriedade DaemonsDefs.

Daemon - Passo a Passo

Métodos Daemon

Start

Chamado quando daemon deve iniciar. Este método deve retornar imediatamente com True.

Stop

Chamado quando daemon deve parar. Este método deve retornar imediatamente com True.

Shutdown

Chamado quando o daemon deve ser killed (morto). este método deve parar o daemon imediatamente e retornar com True. Este não é desencadeado no Linux. Linux simplesmente mata o daemon.

Pause

Chamado quando o daemon deve pausar. Este método deve retornar imediatamente com True. No Linux este não é desencadeado porque o kernek pára completamente o daemon no STOP e continua ele no CONT.

Continue

Chamado quando o daemon deve ser continuar depois da pausa. Este método deve retornar imediatamente com True. No Linux este não é desencadeado.

Install

Chamado quando o daemon é registrado como um serviço do Windows. Este método deve retornar ''True' caso haja sucesso.

Uninstall

Chamado quando o daemon é "des-registrado" como um serviço do Windows. Este método deve retornar ''True' caso hoje sucesso.

AfterUnInstall

Chamado depois que o daemon foi "des-registrado" como um serviço do Windows. Este método deve retornar ''True' quando houver sucesso.

HandleCustomCode

Chamado quando um sinal especial foi enviado para o daemon. Este método deve retornar True caso haja sucesso.

Exemplo

Há um exemplo simples no diretório examples/cleandir/. Leia o arquivo README.TXT.


From the Free Pascal wiki, page "Daemons and Services/pt", as it stood on 2022-01-09 after a change by Slawek, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.

Revision 1, last changed by WikiArchive .

Talk about this page

Nobody has opened a bench for this page yet. Sign in to open one.