bufferToggle(open: Observable, () => close: Observalbe : Observalbe<T[]>)

bufferToggle take two args, first is opening observable, seconde is a function which return an observable for closing.

The closeing observalbe only execute after opening emit value.

const source$ = Rx.Observable.interval(500);
const open$ = Rx.Observable.interval(1500);
const close$ = Rx.Observable.interval(1000); /** ---0---1---2---3---4---5---6---7---8---9----.... (source) -----------1-----------2-----------3--------... (open) --- ---x --- ---x --- ---x... (close)
bufferToggle(open$, () => close$) ------------------([2,3])-----([5.6])-----([8,9])--...
*/ const foo$ = source$.bufferToggle(open$, () => {
return close$;
}); foo$.subscribe(
(x) => console.debug("Next: " + x),
(err) => console.error(err),
() => console.info("DONE")
) /* "Next: 2,3"
"Next: 5,6"
"Next: 8,9"
"Next: 11,12"
...
*/

bufferWhen( () => Observable):

bufferWhen takes a function which return observable.

const source$ = Rx.Observable.interval(500);
const close$ = Rx.Observable.interval(1000); /** ---0---1---2---3---4---5---6---7---8---9----.... (source) -------0-------1-------2-------3-------4---.... (close) bufferWhen(()=>close$) -------(0)-----([1,2])-([3,4])-([5,6])--......
*/ const foo$ = source$.bufferWhen(() => close$); foo$.subscribe(
(x) => console.debug("Next: " + x),
(err) => console.error(err),
() => console.info("DONE")
) /* "Next: 0"
"Next: 1,2"
"Next: 3,4"
"Next: 5,6"
"Next: 7,8"
...
*/

最新文章

  1. C++11 shared_ptr 智能指针 的使用,避免内存泄露
  2. NK3C程序配置
  3. 【POJ】3398 Perfect Service
  4. JavaScript 各种遍历方式详解,有你不知道的黑科技
  5. LeetCode Contains Duplicate II (判断重复元素)
  6. LeetCode: divideInteger
  7. WebChat 清爽来袭 -- JavaChat系统Ⅳ
  8. password学3——Java BASE64加密解密
  9. 聊天工具mychat
  10. 单尺度二维离散小波分解dwt2
  11. Socket的应用案例
  12. 弹性盒模型 flex box
  13. Andrew Ng机器学习课程笔记--week5(上)
  14. Python实现XML文件解析
  15. yum仓库详细解读
  16. ArcGis安装失败提示“需要Microsoft .NET Framework 3.5 sp1或等效环境”的解决方法
  17. 浅谈pc和移动端的响应式
  18. mdf ldf添加到数据库
  19. .Net MVC 当前上下文中不存在名称“Style”
  20. PostgreSQL源码安装文档

热门文章

  1. PHP表单常用正则表达式(URL、HTTP、手机、邮箱等)
  2. Python 手册——开胃菜
  3. [python] 视频008
  4. 如何用C程序简单演奏乐曲
  5. SecurityCRT输出日志重定向
  6. C#(MVC) Word 替换,填充表格,导出并下载PDF文档
  7. iOS-NSTimer-pause-暂停-引用循环
  8. linux 网络栈中的queueing
  9. .config-20150410
  10. zoj 3088 Easter Holidays(最长路+最短路+打印路径)