▲ | orlp 2 days ago | |
It is pull in the sense that an operator can call `recv().await` (the equivalent of `input.next()` in the article) at any point, which can then block the execution of the operator until more data is available. It is push in the sense that an operator can call `send(x).await` (the equivalent of `out(x)` in the article) at any point, which can then block the execution of the operator until the data is consumed. So it is a hybrid of both pull and push. You can, at any point, block on either pulling data or pushing data. |