[Cascavel-pm] Dúvida sobre multiprocessament o?=
Luis Campos de Carvalho
monsieur_champs em yahoo.com.br
Sexta Março 4 07:11:16 PST 2005
Alceu R. de Freitas Jr. wrote:
> Salve Alex,
>
> Eu não sei usar threads em Perl, mas da forma que você
> que você está fazendo abaixo, o script está fazendo
> fork e criando processos filhos.
>
> Existe alguma razão técnica pra você criar threads? A
> algum tempo atrás eu li que a performance deles não é
> necessariamente boa, e dá muito trabalho pra usar.
Bom, e a portabilidade do seu script vai sofrer um pouco, além de
tudo o que o Alceu listou.
Penso que você pode usar fork() para fazer o trabalho sujo, assim:
# Isto aqui ajuda a reclamar recursos
# dos processos filhos, conforme eles terminem.
local $SIG{CHILD} = sub{ wait; };
foreach( @FILES ){
my $parent = fork();
if( $parent ){ # sou o processo filho
# Execute processamento específico aqui
}else{ # sou o processo pai
# nao faz nada, apenas gera o proximo loop.
}
}
--
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Luis Campos de Carvalho is BSc in Comp Science,
PerlMonk [SiteDocClan], Sao Paulo PM Leader,
Unix Sys Admin && Certified Oracle DBA
http://br.geocities.com/monsieur_champs/
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Mais detalhes sobre a lista de discussão Cascavel-pm