Reactive Extensions

Observable.Select

Observable.Selectで、各要素に対してさらなる加工を行える。Observable.Select Method (System.Reactive.Linq) | Microsoft Docs Reactive Extensions入門 7「Select」 - かずきのBlog@hatenaWhereで偶数だけ通し、通した値をSelectでさらに2倍する。 y = 4…

Observable.Where

Observable.Whereで、フィルタの条件を指定できる。Observable.Where Method (System.Reactive.Linq) | Microsoft Docs Reactive Extensions入門 3「Where」 - かずきのBlog@hatena1つ目では、Observable.Rangeで発行する値を偶数に絞っている。 通知が来る…

Observable.Create

Observable.Createは、オブザーバーを引数としたラムダ式に、Subscribe時の実行したい処理を書く。Observable.Create Method (System.Reactive.Linq) | Microsoft Docs Reactive Extensions再入門 その3「IObservableのファクトリメソッド」 - かずきのBlog…

Observable.AsObservable<TSource>

Observable.AsObservable<TSource>で、IObservable<TSource>にキャストできる。Observable.AsObservable(TSource) Method (System.Reactive.Linq) | Microsoft Docs Reactive Extensions再入門 その3「IObservableのファクトリメソッド」 - かずきのBlog@hatena 【Unity】AsOb</tsource></tsource>…

Observable.Defer<TValue>

Observable.Defer<TValue>は、変わった動きをする。Observable.Defer(TValue) Method (System.Reactive.Linq) | Microsoft Docs Reactive Extensions再入門 その3「IObservableのファクトリメソッド」 - かずきのBlog@hatenaSubscribeするたびに、渡されたラムダ式</tvalue>…

ReplaySubject<T>

ReplaySubject<T>は、Subscribe前の値もキャッシュするのですべて発行される。ReplaySubject(T) Class (System.Reactive.Subjects) | Microsoft Docs Reactive Extensions再入門 その3「IObservableのファクトリメソッド」 - かずきのBlog@hatenaこれを実行す</t>…

Subject<T>.Subscribe

ちょっと戻って、Subject<T>について。 Subject<T>.Subscribeは、オブザーバーをセットしたり(これはSubject<T>.Subscribeそのものの機能)、ラムダ式をセットしたり(これはIObservableの拡張メソッドの機能かな)するわけだが、特徴として、Subscribeの前にOnNextで値</t></t></t>…

Observable.FromAsyncPattern

非同期処理をIObservableに変換するには、Observable.FromAsyncPatternを使う。Observable.FromAsyncPattern Method (System.Reactive.Linq) | Microsoft Docs Reactive Extensions入門 6「非同期呼び出しの終わりを監視する」 - かずきのBlog@hatena3秒後に…

Observable.FromEvent

イベントをオブザーバブルに変換するには、Observable.FromEventを使う。Observable.FromEvent Method (System.Reactive.Linq) | Microsoft Docs Reactive Extensions入門 5「イベントを監視する」 - かずきのBlog@hatena Reactive Extensions再入門 その6…

Observable.ToAsync

Observable.ToAsyncは、引数のデリゲートが返した値を発行するobservableを返すデリゲートの作成に使う。Observable.ToAsync Method (System.Reactive.Linq) | Microsoft Docs Reactive Extensions再入門 その6「HotなIObservableを作成するファクトリ」 - …

Observable.Start

Observable.Startは、引数で渡したデリゲートの非同期処理を開始し、その戻り値を発行する。Observable.Start Method (Action, IScheduler) (System.Reactive.Linq) | Microsoft Docs Reactive Extensions入門 4「Observableを作成する便利なメソッド」 - か…

Observable.Generate

Observable.Generateで、for文のような条件の形で、値を数列のように発行する。Observable.Generate Method (System.Reactive.Linq) | Microsoft Docs Reactive Extensions再入門 その3「IObservableのファクトリメソッド」 - かずきのBlog@hatenaxを1から5…

Observable.Repeat(this source, repeatCount)

Observable.Repeatで複数回値を発行できたが、戻り値のIObservableをさらにRepeatすると、そのIObservableの処理を複数回繰り返せる。 (Observable.Repeatだけど、IObservableを第1引数とした拡張メソッドらしい。)Observable.Repeat(TSource) Method (IObse…

Observable.Range

指定の範囲の値を発行するオブザーバブルを作成するには、Observable.Rangeを使う。Observable.Range Method (System.Reactive.Linq) | Microsoft Docs Reactive Extensions再入門 その3「IObservableのファクトリメソッド」 - かずきのBlog@hatena5から1ず…

Observable.Repeat

指定の値を指定の回数発行するオブザーバブルを作成するには、Observable.Repeatを使う。Observable.Repeat Method (System.Reactive.Linq) | Microsoft Docs Reactive Extensions再入門 その3「IObservableのファクトリメソッド」 - かずきのBlog@hatena1…

Observable.Return

ここからは、指定の発行動作をするオブザーバブルを作成するファクトリーメソッドに入っていく。 指定の値を発行するオブザーバブルを作成するには、Observable.Returnを使う。Observable.Return Method (System.Reactive.Linq) | Microsoft Docs Reactive E…

Subject<T>

Subject<T>を継承することで、CustomObservableも少し軽量になる。Subject(T) Class (System.Reactive.Subjects) | Microsoft Docs Reactive Extensions再入門 その2「IObservableインターフェースとIObserverインターフェース」 - かずきのBlog@hatenaコンソ</t>…

ObservableExtensions.Subscribe(source,onNext,onError,onCompleted)

onErrorも指定する。ObservableExtensions.Subscribe Method (System) | Microsoft Docs Reactive Extensions再入門 その2「IObservableインターフェースとIObserverインターフェース」 - かずきのBlog@hatena文字列を空にすると、 OnError[1]:value is emp…

ObservableExtensions.Subscribe(source,onNext,onCompleted)

onCompletedも指定する。ObservableExtensions.Subscribe Method (System) | Microsoft Docs Reactive Extensions再入門 その2「IObservableインターフェースとIObserverインターフェース」 - かずきのBlog@hatenaこうすると、 OnNext[1]:ABC OnNext[2]:ABC…

ObservableExtensions.Subscribe(source,onNext)

ObservableExtensions.Subscribeで、通知に対するアクションをラムダ式で書くことが出来る。ObservableExtensions.Subscribe Method (System) | Microsoft Docs Reactive Extensions再入門 その2「IObservableインターフェースとIObserverインターフェース…

IObservable<T>.Subscribe

Subscribeでオブザーバーを登録する。https://docs.microsoft.com/ja-jp/dotnet/api/system.iobservable-1.subscribe?view=netframework-4.8戻り値をDisposeする以外に、usingにしてみたらどうだろうかということで、こうしてみた。 Button3は、登録、実行、…

IObservable<T>

監視する方がIObserver<T>ならば、監視される方はIObservabler<T>。https://docs.microsoft.com/ja-jp/dotnet/api/system.iobservable-1?view=netframework-4.8実装すべきインターフェースは、Subscribeだけであり、これでオブザーバーを登録するのだが、戻り値がI</t></t>…

IObserver<T>.OnCompleted

IObservable<T>が完了を送れば、OnCompletedに通知が来る。https://docs.microsoft.com/ja-jp/dotnet/api/system.iobserver-1.oncompleted?view=netframework-4.8OnCompletedに来たら、iを表示。完了メソッドCompleteを追加し、すべてのオブザーバーに対してOnC</t>…

IObserver<T>.OnError

IObservable<T>でエラーが発生した場合は、OnErrorにエラー通知が来るようにする。https://docs.microsoft.com/ja-jp/dotnet/api/system.iobserver-1.onerror?view=netframework-4.8 Reactive Extensions再入門 その2「IObservableインターフェースとIObserver</t>…

IObserver<T>.OnNext

IObservable<T>.の通知により、IObserver<T>.OnNextにてデータが届けられる。https://docs.microsoft.com/ja-jp/dotnet/api/system.iobserver-1.onnext?view=netframework-4.5CustomObserverのコンストラクタでintの引数を受け取るようにする。 OnNextでその値iをv</t></t>…

IObserver<T>

Reactive Extensionsは、ReactiveX(リアクティブプログラミング)を実現するためのライブラリ。ReactiveX GitHub - dotnet/reactive: The Reactive Extensions for .NET Reactive Extensionsのはじめかた - かずきのBlog@hatena C#の主要インターフェース解説…