Tópico anterior: Loop de um processoPróximo tópico: Controle de processo


Daemons e outros processos de loop

Quando desejar executar um processo repetidamente, crie uma ramificação cíclica em um objeto de processo, em vez de usar o operador Iniciar processo para chamar um segundo processo repetidamente. Um processo cíclico é executado em um loop infinito. Cada iteração não cria novas instâncias do objeto de processo. A principal vantagem da implementação de uma ramificação cíclica é que a lógica que sai do loop está no próprio processo. O processo não depende de fatores externos em um processo pai. O processo é executado como um objeto autônomo.

Os exemplos de processos de loop executados indefinidamente incluem:

Exemplo de processo de loop

Este gráfico mostra um exemplo de processo de loop.

Item:

Descrição:

Operador Iniciar 1: inicie o processo com um operador Iniciar padrão.

Operador Iniciar processo: crie uma sequência de operadores que representem a funcionalidade que você deseja repetir ou da qual deseja efetuar um loop. Essa ramificação pode até mesmo incluir um operador Iniciar processo para iniciar as instâncias de um segundo processo.

Operador Iniciar 2: o operador Iniciar tem um link de entrada opcional. Quando o processo fluir para o segundo operador Iniciar, ele reinicializará todos os outros operadores e reiniciará o processo novamente no Operador Iniciar 1.

Porta de saída e link: para sair desta sequência em loop, especifique uma condição de saída.

Observação: um método alternativo para interromper um processo cíclico consiste em usar uma ramificação independente com seu próprio operador Iniciar. A ramificação pode aguardar a parte de loop do processo para alterar uma variável ou liberar um recurso. Quando esses eventos ocorrerem, a ramificação independente será executada; por exemplo, enviando um alerta de email e processar um operador Interromper.