Subject<T>

Subject<T>を継承することで、CustomObservableも少し軽量になる。

Subject(T) Class (System.Reactive.Subjects) | Microsoft Docs
Reactive Extensions再入門 その2「IObservableインターフェースとIObserverインターフェース」 - かずきのBlog@hatena

コンソール
コンソール

コンソール。

System.Reactive
System.Reactive

System.Reactiveをインストール。

CustomObservable.cs
CustomObservable.cs

CustomObservable.csを追加。

observersリストがsubjectになり、IDisposableの実装が不要になり、Subscribe、Execute、Complete、subjectインスタンスに丸投げすることが出来た。

2つ登録して実行。

OnNext[1]:ABC
OnNext[2]:ABC
続行するには何かキーを押してください . . .

差し替えても、これまで通りの結果になった。

Sample/rx/Subject_T/Subject_T/src/Subject_T at master · bg1bgst333/Sample · GitHub