JOIN
JOINControle de fluxo
Barreira de sincronização: aguarda as chegadas esperadas dos ramos paralelos antes de liberar uma única continuação. As chegadas são persistidas.
O nó JOIN funciona como barreira de sincronização: ele aguarda as chegadas esperadas dos ramos iniciados por uma divisão paralela antes de liberar a continuação.
Ramos A + B↓JOIN↓Continuação única
Entradas e saída
- recebe uma chegada por ramo participante;
- mantém o estado das chegadas de forma durável;
- libera uma única continuação após completar a barreira.
Quando usar
Use JOIN quando a etapa seguinte depende do término de todas as atividades paralelas.
Erros comuns
- conectar ao JOIN um ramo que pode nunca chegar;
- usar uma aresta de erro como chegada da barreira;
- continuar por fora do JOIN e duplicar a próxima ação.
Recuperação
As chegadas do JOIN são persistidas. Isso evita perder a sincronização quando os ramos terminam com grande intervalo entre si.