[Cascavel-pm] Threads em Perl

Nilson Santos Figueiredo Junior acid06 em gmail.com
Quarta Agosto 1 09:46:31 PDT 2007


On 8/1/07, Alceu Rodrigues de Freitas Junior <glasswalk3r em hotmail.com> wrote:
> Você consegue gerar código que roda em ambos sistemas operacionais? Que
> versão você está usando do Forks?

Quando você está sob Windows, você usa threads (até porque, a fork()
no Windows é emulado via threads). Como a API é a mesma, o código fica
igual. Você colocar algo desse tipo no alto:

BEGIN {
  if ($^O eq 'MSWin32') {
    require threads;
    threads->import;
  }
  else {
    requires forks;
    forks->import;
  }
}

No seu código você faz chamadas para threads->create() e outros
métodos usando o namespace threads. O módulo forks além de popular seu
próprio namespace, toma conta também do namespace threads.

Caso você tenha optado por instalar seu módulo "forks" substituindo o
módulo threads, então você nem precisa de fazer isso tudo. Basta um:

  use threads;

e, na verdade, o modulo "forks" será carregado.

-Nilson Santos F. Jr.


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