如何理解串流?
所谓“串流”(Streaming)是指将一连串的影像资料压缩后,经过网络分段传送资料,在网络上即时传输影音以供观赏的一种技术与过程。
简单理解,就是将一段60min的影片,切片为30份,每份两分钟,形成“串流”,那么当你跳到40分钟的时候,影片不需要加载完前39分钟的内容,而是找到与之相邻的最近的一块切片,也就是“一段流”,直接下载这段流,节约时间和资源 。
在解决同步异步的问题上,ReactiveX对于任何发生的事件都当作串流(stream)
举个例子:
网页上的鼠标点击事件就是一连串时间的串流,除非网页关闭,否则这个时间就是会持续发生的。
同理,HTTP请求也是一个串流,只不过这种串流只发生一次。
再甚至是处理一个数组,可以将数组的每个元素想成串流的一小个片段。
同理可得,只是单纯的一个变量,也是一种串流,只不过这种串流只发生一次而已。
既然所有的行为都可以当作串流,那么如何整理这些串流就非常重要。那么reactiveX中,尽量以串流的方式思考问题。