部分讨论了FRP 流处理中的合并操作(使用了Sodium 库)。Book 展示了下图流组合,并说当事件通过流进入 FRP 逻辑时,它会导致在事务上下文中发生的级联状态更改,因此所有更改都是原子的。
事件流 - sDeselect
,sSelect
(参见 2 个事件:“+”和“-”)源自 UI 控件,因为它们发生在同一个 FRP 事务中,因此它们携带的事件被认为是同时发生的。然后书上说
合并实现必须将事件存储在临时存储中 ,直到它知道它不会再收到任何输入。然后它输出一个事件:如果它接收到多个事件,它使用提供的函数来组合它们;否则,它会输出它收到的一个事件。
问题:什么时候是“不再有输入”的时候?合并函数如何知道这一刻?它只是从给定图表上的第二个传入流中获取值的时间还是我错过了smth?你能用一个更好的流例子来说明它吗?