Я изучаю шаблон promises и используя kriskowal q для node.js,
имеющий этот фрагмент:
var deferred = Q.defer();
try {
messageData = JSON.parse(message);
} catch (e) {
global.logger.warn('Error parsing JSON message.');
deferred.reject(e);
}
...
if (some_reason)
deferred.resolve(something);
...
return deferred.promise;
Что делать, если сбой анализатора и some_reason истинно?
Будет ли процесс исполнения отклоняться посредством разрешения и обе метода обетования вызываться в разное время, создавая таким образом ошибку?
Должен ли я избегать многократного вызова reject/resolve?