刚开始看概念,还不能完全理解,目前还只知道,属于观察者模式,最终的目的是为了让异步的编码看起来更加地直观。并且可以实现的是,限定某个异步任务在某种特定的情况下触发。

而我本来是想要找一个这样的东西:

例如,我需要在一个界面上画出很多的实例,假如每个实例都是一个实体类,那么在使用WPF的时候,一般情况下会绑定一个List或者一个ObserveableCollection,这样可以实现,界面的绘制,然而如果这个列表数量庞大,并且每个实例的元素也很多,就会导致整个绘制的过程卡住,因为主UI线程在绘制的时候是阻塞的,而有大量绘制任务的时候,那么整个线程也会扛不住,后来发现有个IsAync的绑定属性,可以让每个实例的内部元素异步绘制,这样相当于可以实现界面操作不卡住,并且会有那种网页上的图片还没加载,图片的占位符先出现的感觉。而我想要的是这样的,我往一个List里一步步填充数据,而此时界面已经开始在绘制了,仅仅绘制已经有的数据,比如先画个框,然后内部的数据由异步的线程来完成后续的绘制,以实现类似瀑布流那种效果,当然不是滚动到最底再画新的数据,最终还是要把所有数据全部绘制出来的

接下来准备从这里开始研究

http://rxwiki.wikidot.com/101samples