У меня странная проблема в моем коде, и я не могу root вызвать ее.
try {
const result = await somePromise.catch((err) => {
console.log(new Date()); // this prints time, t0
console.log('Stats', eventLoopStats.sense());
throw err;
});
} catch (e) {
console.log(new Date()); // this prints time, t0 + 15 seconds
console.log('Stats', eventLoopStats.sense()); // this prints {0, 0, 0, 0}, meaning, event loop hasn't been involved since last call to sense
}
Мой вопрос: почему между обещанием отклонить обещание и его фактическим существованием существует огромная задержка? поймали во внешнем блоке catch?
Я нахожусь в моей среде разработчиков, которая довольно простаивает. Кроме того, он постоянно имеет задержку около 15 секунд.
Существуют ли другие способы отладки?
Примечания:
- Я использую версию узла 12.11.1
- Также использование
bluebird
для обещаний somePromise
получено из библиотеки, которая была перенесена в Javascript из Typescript.