Как стать автором
Обновить

Комментарии 1

Есть еще такая тема как backpressure (когда принимающая сторона говорит «горшочек, не вари», а передающая должна притормозить).


Насколько я понимаю, в Go и Reader, и Writer блокируют горутину до окончания операции, так что там должно быть все просто?


Если сравнивать с Node, то в Node аналогичная функциональность в stream-ах сделана просто кошмарно. Причина в том, что и чтение, и запись там неблокирующие, а когда это все проектировали, async-await еще не завезли (да и промисов, в общем-то, не было), поэтому для реализации backpressure используются жутчайшие костыли и стейт-машина на десяток состояний.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий