[Rio-pm] programa "fênix"

Solli Honorio shonorio em gmail.com
Terça Dezembro 4 16:26:28 PST 2007


Dê uma olhada nisto também
http://netmirror.org/mirror/linuxgazette.net/139/misc/lg/perl_fork__how_to_keep_restarting_a_child_till_timeout.html

Solli M. Honório

On Dec 4, 2007 10:00 PM, eden <edencardim em gmail.com> wrote:

> On Dec 4, 2007 8:13 PM, Pedro Henrique <phikeda em gmail.com> wrote:
> > Amigos,
> >
> > Estou com dificuldade para fazer uma prova de conceito aqui, um programa
> que
> > periodicamente se recarregue, matando a instância antiga e executando a
> > nova.
> >
> > Consigo fazer o programa ler a si mesmo com o $0, e imagino que um
> fork()
> > seguido de um eval ou mesmo um system() seja necessário, mas não entendo
> > muito bem de forks e não sei como "matar" o pai, devolvendo
> memória/recursos
> > para o sistema e fazendo a nova instância rodar como se a anterior nunca
> > tivesse existido.
> >
> > Alguém pode me dar uma luz?
>
> Acho má idéia ter um processo auto-gerenciado, acho que o que você
> quer é um gerenciador de processos boss-worker. Nesse modelo, um
> processo (o boss) monitora outros processos (os workers), criando ou
> destruindo workers de acordo com algum critério. Tem várias
> implementações disponíveis no CPAN que seguem esse modelo. Como
> exemplo, cito o
>
> http://search.cpan.org/author/RHANDOM/Net-Server-0.97/lib/Net/Server/PreFork.pm
> Dá uma lida no fonte, é bastante instrutivo.
>
> --
> edenc.vox.com
> _______________________________________________
> Rio-pm mailing list
> Rio-pm em pm.org
> http://mail.pm.org/mailman/listinfo/rio-pm
>



-- 
"o animal satisfeito dorme". - Guimarães Rosa
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://mail.pm.org/pipermail/rio-pm/attachments/20071204/5567ab08/attachment.html 


Mais detalhes sobre a lista de discussão Rio-pm