Tópico :: Isolate :: Piscina

Thread :: Isolate :: Pool é uma piscina de tópicos para executar várias tarefas.
Baixe Agora

Tópico :: Isolate :: Piscina Classificação e resumo

Propaganda

  • Rating:
  • Licença:
  • Perl Artistic License
  • Preço:
  • FREE
  • Nome do editor:
  • Graciliano M. P.
  • Site do editor:
  • http://search.cpan.org/~gmpassos/

Tópico :: Isolate :: Piscina Tag


Tópico :: Isolate :: Piscina Descrição

Tópico :: Isolate :: Pool é uma piscina de tópicos para executar várias tarefas. Tópico :: Isolate :: Pool é uma piscina de tópicos para executar várias tarefas. Este módulo cria uma piscina de encadeamentos que podem ser usados para executar simultaneamente muitas tarefas. A interface para a piscina é semelhante a um thread normal :: Isolate Object, para que possamos pensar que a piscina é como um thread que pode receber várias chamadas ao mesmo tempo.Usage Use Thread :: Isolate :: Pool; Meu $ Pool = Thread :: Isolate :: Pool-> Novo (); $ piscina-> Use ('lwp :: simples'); ## carrega lwp :: Simples no segmento principal da piscina. Imprimir $ Pool-> main_thread-> err; ## $ @ do segmento principal da piscina. Meu $ URL = 'http://www.perlmonks.com/'; meu $ job1 = $ bilhar-> call_detached ('get', $ URL); meu $ job2 = $ bilhar-> call_detached ('get', $ URL); meu $ job3 = $ bilhar-> call_detached ('get', $ URL); ## imprimir quais trabalhos estão sendo executados na piscina: enquanto ($ job1-> is_running || $ job2-> is_running || $ job3-> is_running) {print "" se $ job1-> is_running; Imprimir "" Se $ job2-> is_running; Imprimir "" Se $ job3-> is_running; } Imprimir "N tamanho:". comprimento ($ job1-> devolvido). "n"; Imprimir "N tamanho:". comprimento ($ job2-> devolvido). "n"; Imprimir "N tamanho:". comprimento ($ job3-> devolvido). "n"; ## Desligue todo o fio da piscina: $ piscina-> desligamento; o código acima cria um pool de tópicos e fazer simultaneamente 3 lwp :: simples :: get () s. Internamente a piscina tem um fio principal que é usado para criar os encadeamentos de execução. A linha principal deve ter todos os recursos / módulos carregados antes de fazer qualquer chamada () / eval () para o pool. Quando uma chamada () / eval () é feito, se a piscina não tiver nenhuma linha livre (sem estar executando qualquer trabalho), um novo thread é criado a partir do segmento principal e é usado para fazer a tarefa. Observe que nenhum segmento será removido após ser criado, já que esta não é a memória livre, então é melhor deixá-los lá até o desligamento (). MétodosNew (limite) cria um novo pool. Se o limite for definido, definirá o número máximo de encadeamentos dentro do pool. Então, isso define o número máximo de chamadas simultâneas que a piscina pode ter.main_threadreturns O thread principal.Limitreturns O limite de threads da piscina.get_free_threadreturn Um fio grátis. Se não for possível obter um fio gratuito e criar um novo limite devido, qualquer encadeamento no pool será retornado.If chamado em um concurso de array retornará (Free_Thread, on_limit), onde quando on_limit é verdadeiro indica que não foi possível Obter um fio gratuito ou criar um novo thread grátis.add_threadd Um novo thread, se não estiver no limite.use (módulo, args) fazer um "Módulo de uso QW (ARGS)" chamar no segmento principal do pool.Callget A Free thread e fazer uma chamada $ thi ()> em it.call_detachedget Um thread grátis e fazer um $ thi-call_detached ()> on it.evalget um thread grátis e fazer um $ thi-eval ()> nele.eval_detachedget A Fio grátis e fazer um $ Thi-Eval_Detached ()> nele.shutdownshutdown todos os segmentos da piscina. Requisitos: · Perl.


Tópico :: Isolate :: Piscina Software Relacionado

Webfetch

Webfetch é um módulo Perl para baixar e salvar informações da Web. ...

160

Download