非同期処理をIObservableに変換するには、Observable.FromAsyncPatternを使う。
Observable.FromAsyncPattern Method (System.Reactive.Linq) | Microsoft Docs
Reactive Extensions入門 6「非同期呼び出しの終わりを監視する」 - かずきのBlog@hatena
3秒後に2乗した値を返すデリゲート。
Observable.FromAsyncPattern 1 Observable.FromAsyncPattern 4 Observable.FromAsyncPattern 5 Observable.FromAsyncPattern 2 Observable.FromAsyncPattern 6 Observable.FromAsyncPattern 9
最初、
Observable.FromAsyncPattern 1 Observable.FromAsyncPattern 4 Observable.FromAsyncPattern 5 Observable.FromAsyncPattern 2 Observable.FromAsyncPattern 6 Observable.FromAsyncPattern 9 Observable.FromAsyncPattern 3 Observable.FromAsyncPattern 7 x = 4 Observable.FromAsyncPattern 8
3秒後にこうなり、
Observable.FromAsyncPattern 1 Observable.FromAsyncPattern 4 Observable.FromAsyncPattern 5 Observable.FromAsyncPattern 2 Observable.FromAsyncPattern 6 Observable.FromAsyncPattern 9 Observable.FromAsyncPattern 3 Observable.FromAsyncPattern 7 x = 4 Observable.FromAsyncPattern 8 続行するには何かキーを押してください . . .
キーを押すとこうなる。
非同期処理が終わったら、値が通知される。
Sample/rx/Observable/FromAsyncPattern/src/Observable_ at master · bg1bgst333/Sample · GitHub