Показать сообщение отдельно
  #2 (permalink)  
Старый 05.11.2017, 14:43
Аватар для Alexandroppolus
Профессор
Отправить личное сообщение для Alexandroppolus Посмотреть профиль Найти все сообщения от Alexandroppolus
 
Регистрация: 25.10.2016
Сообщений: 1,012

Речь, как я понимаю, про inconsistentRead.

Если есть функция с колбеком, и этот колбек в некоторых случаях может вызваться только асинхронно (в данном примере - при отсутствии данных в кэше), то функция должна быть написана так, чтобы колбек всегда вызывался асинхронно.

Для наличия данных в кэше добавляем асинхронность искусственно:
if (cache[filename]){
    process.nextTick(callback, cache[filename]);
}
Ответить с цитированием