RxJava——简介

来源:互联网 发布:删除sql字段数据 编辑:程序博客网 时间:2024/05/19 18:12

RxJava应该是当前非常流行的技术,除了RxJava,还有RxAndroid、RxSwift、RxJS,设置RxPython、RxPHP。Rx,是Reactive Extensions,即响应式扩展(编程)。

今天开始讲RxJava,这一节,先对RxJava做简单介绍。


RxJava,全名是Reactive Extensions for the JVM,就是说,RxJava是一个实现了响应式扩展编程的Java虚拟机,更详细地说,就是通过使用可观察序列(observable sequences),来组成异步和基于事件编程的库。

它继承了观察者模式(observer pattern),支持数据和事件的序列化,并且添加了组合这些事件序列化的操作符,抽象出低等级线程、同步、线程安全、并发数据结构。


目前,RxJava有两个版本,如下:

Version 1.x(Javadoc)

查看1.x版本的分支,可以点1.x branch。

1.x版本主线的时间表计划如下:

  • 2017年6月1日 - 功能冻结(没有新的操作符),只有bug修复
  • 2018年3月31日 - 结束,将来不再开发


Version 2.x(Javadoc)

  • 单独依赖,只依赖Reactive Streams
  • 继续支持java 6+和Android 2.3+
  • 性能得到提升,通过改变设计1.x版本周期和Reactive-Streams-Commons项目的研究
  • 友好支持Java 8 lambda
  • 不在主观地处理并发,包括线程、池、事件轮训、fibers、actors等
  • 异步和同步执行
  • 虚拟时间和参数化的并发调度器


Version 2.x和1.x将并行存在几年。他们将有不同的组id,io.reactivex.rxjava2和io.reactivex,以及不同的命名空间,分别是io.reactivex和rx。

关于Version1.x和2.x的不同之处,可以查看wiki的What's different in 2.0话题。


原创粉丝点击