История изменений
Исправление Vit, (текущая версия) :
Грубо говоря, домены - это обертка, которая обеспечивает правильное протаскивание эксепшенов и стектрейса через колбеки. И освобождение вложенных замыканий. Как это делается - без понятия, код не смотрел.
Насчет того, что эксепшены случаются - в грамотно написаных асинхронных функциях их просто не кидают. Или код локально в try/catch оборачивают, выливая результат в callback.
В очень грубом приближении, эксепшены для синхронного кода, потому что он может вернуть только 1 параметр (результат). А при колбеках стандартная сигнатура это function(err, data). То есть эксепшены использовать можно, но в большинстве случаев это выглядит более чем странно.
Исправление Vit, :
Грубо говоря, домены - это обертка, которая обеспечивает правильное протаскивание эксепшенов и стектрейса через колбеки. И освобождение вложенных замыканий. Как это делается - без понятия, код не смотрел.
Насчет того, что эксепшены случаются - в грамотно написаных функциях их просто не кидают. Или код локально в try/catch оборачивают, выливая результат в callback.
В очень грубом приближении, эксепшены для синхронного кода, потому что он может вернуть только 1 параметр (результат). А при колбеках стандартная сигнатура это function(err, data). То есть эксепшены использовать можно, но в большинстве случаев это выглядит более чем странно.
Исходная версия Vit, :
Грубо говоря, домены - это обертка, которая обеспечивает правильное протаскивание эксепшенов и стектрейса через колбеки. И освобождение ресурсов. Как это делается - без понятия, код не смотрел.
Насчет того, что эксепшены случаются - в грамотно написаных функциях их просто не кидают. Или код локально в try/catch оборачивают, выливая результат в callback.
В очень грубом приближении, эксепшены для синхронного кода, потому что он может вернуть только 1 параметр (результат). А при колбеках стандартная сигнатура это function(err, data). То есть эксепшены использовать можно, но в большинстве случаев это выглядит более чем странно.