IPC :: Pipeline.

Crie um pipeline de shell de muitos comandos em execução
Baixe Agora

IPC :: Pipeline. Classificação e resumo

Propaganda

  • Rating:
  • Licença:
  • Perl Artistic License
  • Nome do editor:
  • Erin Sch?nhals
  • Site do editor:
  • http://search.cpan.org/~wrath/

IPC :: Pipeline. Tag


IPC :: Pipeline. Descrição

Crie um pipeline parecido com shell de muitos comandos em execução Semelhante na convenção de chamadas para o IPC :: Open3, conectando o primeiro filho ao alça First_Chld_in, pipeline () desova n filhos, a criança final para Last_Chld_out, e cada criança a um identificador de erro padrão compartilhado, infantil_err. Cada comando subseqüente especificado faz com que um novo processo seja garfo () ed. Cada processo está vinculado ao último com um par de descritor de arquivo criado por tubo (), usando o DUP2 () para cadeia de cada entrada padrão 'para a última saída padrão. Os comandos especificados nas matrizes anônimos passadas são iniciados nos processos filho com um simples Exec () Call.if FileGlobs ou descritores de arquivos numéricos são passados em qualquer um dos três parâmetros posicionais, então serão duplicados nas alças de arquivo alocadas como resultado do pipelining do processo. Caso contrário, a tarefa escalar será realizada.Por favor, ser informado de que qualquer uso de descritores de arquivos numéricos resulte em uma importação implícita de POSIX :: DUP2 () no tempo de execução. Como o IPC :: Open3, o pipeline () retorna imediatamente após a desovar o processo Corrente, embora diferindo ligeiramente em que os IDs de cada processo são devolvidos em ordem de especificação em uma lista quando chamados no contexto da matriz. Quando chamado em contexto escalar, apenas o ID do primeiro processo de criança gerou é retornado.Also como IPC :: Open3, um pode usar Select () para leitura multiplex e escrita para cada uma das alças retornadas por pipeline (), de preferência com não -Buffered sysread () e syswrite () chama. Usando isso para lidar com a saída padrão de leitura e erro das crianças é ideal, como considerações de bloqueio e buffer são aliviados. Se qualquer processo filho morre prematuramente, ou qualquer uma das alças do arquivo canalizadas estiver fechada por qualquer motivo, o processo de chamada herda o comportamento do kernel de receber um sigpipe, que requer a instalação de um manipulador de sinal para recuperação apropriada.Synopsis Use IPC :: Pipeline; Meu @PIDS = Pipeline (\ * first_chld_in, \ * last_chld_out, \ * filhos_err, , , ... ); ... fazer coisas ... meus @statuses = map {waitpid ($ _, 0); $? >> 8; } @PIDs; Requisitos: · Perl.


IPC :: Pipeline. Software Relacionado