Комментарии 10
Статья зачетная)) почитал с удовольствием
Streams — потоки, threads — ?
Тоже поток)) Но это о разном. В контексте node js, streams позволяет работать с потоковыми данными, а thread относится к многопоточности(когда что-то может выполняться параллельно), пример — Worker Threads
Как меня учили: streams — потоки, threads — нити
Как оказалось: streams — стримы, threads — трэды
Как оказалось: streams — стримы, threads — трэды
Мне в своё время понравились эти примеры применения stream/transform.
Спасибо, статья интересная
Примеры не вполне корректные: когда мы получили false из метода this.push — это означает, что данные не были успешно записаны/считанны. В реальном коде лучше преостанавливать ход выполнения кода на этом месте, очистить буфер, и лишь потом продолжать выполнение кода. В противном случае, мы рискуем написать код, который не выполняет свое предназначение (застряет на каком-то месте и не записывает/считывает все необходимые данные).
когда мы получили false из метода this.push — это означает, что данные не были успешно записаны/считанны
Нет, это всего лишь означает, что размер внутренней очереди вышел за некоторый лимит.
Да, если делать пуши слишком часто — можно исчерпать память, но тут не тот случай: во всех примерах операция push делается строго внутри _read, т.е. при пустой внутренней очереди. При таком использовании возвращаемое значение можно не проверять, ReadableStream сам проследит за ним.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Node.js Streams для чайников или как работать с потоками