2013-03-15 8 views
1

Я хочу видеть все неразрешенные состояния (если возможно, весь журнал отложенных: init, неразрешенные, разрешенные/отклоненные состояния). Есть ли какой-нибудь механизм для этого?Есть ли что-то вроде монитора для отложенных (Q) в node.js?

Что-то вроде: Q.getAllDeferreds() или Q.getLog()

ответ

1

Отложенная реализация (я автор) предлагает такие вещи, как неразрешенные обещает контролировать и обещают «статистику использования», проверьте https://github.com/medikoo/deferred#monitoring-unresolved-promises

+0

здорово! Спасибо! – static

+0

Возможно, вы знаете, как использовать эту функциональность в модуле Q? – static

+0

@static внутренности очень разные, поэтому я не могу подключить, я боюсь. Вместо этого вы можете использовать Deferred (который не испытывает недостатка в сравнении с Q, я бы сказал, что он скорее противоположный), или просто опубликуйте проблему на странице проекта Q, запрашивающей такую ​​же функциональность. –

2

Предполагая, "д" ...

Смотрите раздел "Прогресс Notification" и немного о "deferred.notify" в разделе "Использование Deferreds" - here.

Но обратите внимание, что в нем говорится (как и следовало ожидать) «не все обещания будут выполнять уведомления о ходе работ», поэтому, если ваш рабочий модуль не предусматривает уведомления, то вы ничего не можете с этим поделать на стороне, обещая. Вы можете настроить обработчик хода в .then(), но он не будет срабатывать, если модуль не вызывает deferred.notify().

Конечно, если рабочий модуль имеет вашу собственную конструкцию (или иначе под вашим контролем), вы можете изменить ее для предоставления уведомлений.