Async: pergunta: verifique um async.queue para ver se uma tarefa correspondente já foi inserida?

Criado em 27 jul. 2017  ·  3Comentários  ·  Fonte: caolan/async

Existe alguma maneira de examinar as tarefas de uma fila atual para determinar se a tarefa que você está prestes a colocar já corresponde a uma tarefa atualmente na fila?

enhancement queue

Comentários muito úteis

Embora, como um aprimoramento da fila, pudéssemos expor uma propriedade q[Symbol.iterator] para expor uma maneira agnóstica de implementação de iterar os itens atuais da fila.

Todos 3 comentários

Não há uma maneira oficialmente sancionada de iterar a fila. Há uma propriedade q._tasks que expõe a lista vinculada subjacente para a fila. Você pode iterar a lista vinculada ou chamar q._tasks.toArray().find(...) para ver se sua tarefa já existe.

Este é um detalhe de implementação, portanto, não está documentado. Pode quebrar no futuro se mudarmos a forma como a fila funciona internamente.

Embora, como um aprimoramento da fila, pudéssemos expor uma propriedade q[Symbol.iterator] para expor uma maneira agnóstica de implementação de iterar os itens atuais da fila.

Eu também gostaria desse recurso, muitas outras filas têm esse recurso.
q.contains(task) seria muito útil!

Esta página foi útil?
0 / 5 - 0 avaliações