Pular para conteúdo

Jobs únicos

Unique{Key} faz Enqueue retornar o id de um job ativo com o mesmo tipo e a mesma chave, em vez de inserir outro. A chave é liberada assim que esse job é concluído, falha ou é excluído.

Unique{Key, For: d} segura a chave por d a partir do primeiro enfileiramento, não importa o que aconteça com o job nesse meio-tempo, incluindo sucesso. Isso significa "no máximo uma vez a cada d" (um lembrete a cada 10 minutos), não "sem duplicatas enquanto ele roda".

Unique{Key, Replace: true} atualiza um detentor que ainda não começou com os novos args, metadados, tags, título e prioridade, então o job roda com os dados mais recentes. Unique{Key, Debounce: d} roda o job d depois do último enfileiramento: cada novo enfileiramento empurra um detentor que ainda está esperando e substitui seus args, o que serve para trabalhos como "reindexar quando o usuário parar de editar". Um detentor que já está rodando nunca é alterado.