У меня есть функция, вызывающая две асинхронные функции. Основная функция обрабатывает запросы от пользователей. Вот пример:Как выполнить две операции async за один шаг в node.js как одну атомную операцию?
mainFunction(req, res, done) {
asyncExist(req, function(exists) {
if (!exists) {
asyncCreate(req, done);
}
})
}
Проблема в том, что у меня много запросов. Моя основная функция - вызов async. Nodejs выполняет функцию asyncExist для многих запросов перед вызовом функции asyncCreate. В результате функция asyncCreate вызывает много раз с теми же параметрами. Вопрос в том, что делать с этой фундаментальной проблемой?
Я не вижу проблемы. Функции всегда будут вызываться с правильными параметрами один раз. – TheHippo
Пожалуйста, обратите внимание на то, что я говорю о нескольких запросах. – hsd
node.js однопоточный, поэтому данные не смешиваются. Один запрос за время обрабатывается, контекст переключается всякий раз, когда происходит обратный вызов или «возвращается». – TheHippo