console.log('before wait')
const result = await (new Promise<[Report?]>((resolve) => {
setTimeout(() => {
resolve([])
}, 3000)
}))
console.log('after wait')
Есть такой вот код, как только выполнение доходит до него, обработчик как будто блокируется несмотря на то что операция асинхронная.
выражается это следующим образом:
1) Я отправляю первое сообщение
2) Дело доходит до выполнения указанного кода
3) Я отправляю еще 3 сообщения
4) Обработчик ждет пока полностью завершится выполнение кода запущенного при первом сообщении
5) Код параллельно запускается для всех 3х новых сообщений, и опять блокируется пока все 3 не будут выполнены.
Что я делаю не так? Почему обработчик блокируется на асинхронной операции?
Как можно избежать блокировок?
https://t.me/telegraf_ru/132681
Обсуждают сегодня