Используемый мной модуль (level
) использует NodeJS "Readable Streams".
Моя функция .on("data", async function (data)
содержит await
.
Когда поток вызывает события end
или close
, я заметил некоторые несоответствия, поэтому я добавил простое console.log("knock");
в конце моего события данных. Конечно же, эти knocks
были напечатаны даже ПОСЛЕ того, как end
и close
были названы!
Кто-нибудь знает почему? Код потока не await
, пока моя функция не закончила выполняться? Что-нибудь, что мы можем сделать?
Этого не произойдет, если я удалю вызов await
или если набор данных будет маленьким.