次の方法で共有


ISubject<T> インターフェイス

観測可能なシーケンスとオブザーバーの両方であるオブジェクトを表します。

名前空間:System.Reactive.Subjects
アセンブリ: System.Reactive (System.Reactive.dll内)

構文

'Declaration
Public Interface ISubject(Of T) _
    Inherits ISubject(Of T, T), IObserver(Of T),  _
    IObservable(Of T)
'Usage
Dim instance As ISubject(Of T)
public interface ISubject<T> : ISubject<T, T>, 
    IObserver<T>, IObservable<T>
generic<typename T>
public interface class ISubject : ISubject<T, T>, 
    IObserver<T>, IObservable<T>
type ISubject<'T> =  
    interface
        interface ISubject<'T, 'T>
        interface IObserver<'T>
        interface IObservable<'T>
    end
JScript does not support generic types and methods.

型パラメーター

  • T
    件名の種類。

ISubject<T> 型は、次のメンバーを公開します。

メソッド

  名前 形容
Public メソッド OnCompleted (IObserver<T>から継承されます)。
Public メソッド OnError (IObserver<T>から継承されます)。
Public メソッド OnNext (IObserver<T>から継承されます)。
Public メソッド サブスクライブ (IObservable<T>から継承されます。

ページのトップへ

拡張メソッド

  名前 形容
パブリック拡張メソッドパブリック拡張メソッド 集計<T>(Func<T,T, T>) オーバー ロード。 観測可能なシーケンスにアキュムレータ関数を適用します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド Aggregate<T, TAccumulate>(TAccumulate, Func<TAccumulate, T, TAccumulate>) オーバー ロード。 指定したシード値を持つ観測可能なシーケンスにアキュムレータ関数を適用します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド すべてのTする 監視可能なシーケンスのすべての要素が条件を満たすかどうかを判断します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド Amb<T> 指定した 1 番目と 2 番目のシーケンスと最初に反応する監視可能なシーケンスを伝達します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド と<T、TRight> 両方の監視可能なシーケンスに使用可能な値がある場合に一致します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド 任意のT() を する オーバー ロード。 監視可能なシーケンスに要素が含まれているかどうかを判断します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド 任意の<T>(Func<T、Boolean>) を オーバー ロード。 監視可能なシーケンスのすべての要素が条件を満たすかどうかを判断します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド AsObservable<T> 監視可能なシーケンスの ID を非表示にします。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド AsObserver<T> オブザーバーの ID を非表示にします。 (オブザーバーによって定義
パブリック拡張メソッドパブリック拡張メソッド AsQbservableTする 監視可能なシーケンスをクエリ可能な監視可能なシーケンスに変換します。 (Qbservableによって定義
パブリック拡張メソッドパブリック拡張メソッド AssertEqualT (Extensionsによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド バッファー<T>(Int32) オーバー ロード。 監視可能シーケンスの各要素を、要素数情報に基づいて生成される連続する重複しないバッファーに示します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド バッファー<T>(TimeSpan) オーバー ロード。 監視可能シーケンスの各要素を、タイミング情報に基づいて生成される連続する重複しないバッファーに示します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド バッファー<T>(Int32、Int32) オーバー ロード。 監視可能シーケンスの各要素を、要素数情報に基づいて生成される 0 個以上のバッファーに示します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド バッファー<T>(TimeSpan、IScheduler) オーバー ロード。 監視可能シーケンスの各要素を、タイミング情報に基づいて生成される連続する重複しないバッファーに示します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド バッファー<T>(TimeSpan、TimeSpan) オーバー ロード。 監視可能シーケンスの各要素を、タイミング情報に基づいて生成される 0 個以上のバッファーに示します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド バッファー<T>(TimeSpan、Int32) オーバー ロード。 監視可能なシーケンスの各要素をバッファーに示します。バッファーが満杯になった場合、または特定の時間が経過したときに送信されます。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド バッファー<T>(TimeSpan、TimeSpan、IScheduler) オーバー ロード。 監視可能シーケンスの各要素を、タイミング情報に基づいて生成される 0 個以上のバッファーに示します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド バッファー<T>(TimeSpan、Int32、IScheduler) オーバー ロード。 監視可能なシーケンスの各要素をバッファーに示します。バッファーが満杯になった場合、または特定の時間が経過したときに送信されます。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド バッファー<T、TBufferClosing>(Func<IObservable<TBufferClosing>>) オーバー ロード。 観測可能なシーケンスの各要素を連続する重複しないバッファーに示します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド Buffer<T、TBufferOpening、TBufferClosing>(IObservable<TBufferOpening>、Func<TBufferOpening、IObservable<TBufferClosing>>) オーバー ロード。 クエリ可能な監視可能シーケンスの各要素を連続する重複しないバッファーに示します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド <T>(IObservable<T>) をキャッチします オーバー ロード。 次の監視可能なシーケンスで例外によって終了される監視可能なシーケンスを続行します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド Catch<T, TException>(Func<TException, IObservable<T>>) オーバー ロード。 ハンドラーによって生成された監視可能なシーケンスを使用して、指定した型の例外によって終了される監視可能なシーケンスを続行します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド CombineLatest<T、TSecond、TResult> 観測可能なシーケンスの 1 つが要素を生成するたびにセレクター関数を使用して、2 つの観測可能なシーケンスを 1 つの監視可能なシーケンスにマージします。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド Concat<T> 2 つの観測可能なシーケンスを連結します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド T>(T)<含まれています オーバー ロード。 既定の等値比較子を使用して、監視可能なシーケンスに指定された要素が含まれているかどうかを判断します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド T>(T、IEqualityComparer<T>)<含 オーバー ロード。 指定した System.Collections.Generic.IEqualityComparer< を使用して、監視可能なシーケンスに指定した要素が含まれているかどうかを判断します。T>。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド カウント<T> 監視可能なシーケンス内の要素の合計数を表す Int32 を返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド DefaultIfEmpty<T>() オーバー ロード。 シーケンスが空の場合は、指定したシーケンスの要素、またはシングルトン シーケンス内の型パラメーターの既定値を返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド DefaultIfEmptyT(T) を する オーバー ロード。 シーケンスが空の場合は、指定したシーケンスの要素、またはシングルトン シーケンス内の型パラメーターの既定値を返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド 遅延<T>(TimeSpan) オーバー ロード。 指定したソースと dueTime の期限別に監視可能なシーケンスを示します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド Delay<T>(DateTimeOffset) オーバー ロード。 指定したソースと dueTime の期限別に監視可能なシーケンスを示します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド 遅延<T>(TimeSpan、IScheduler) オーバー ロード。 指定したソース、dueTime、スケジューラを使用して、期限別に監視可能なシーケンスを示します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド Delay<T>(DateTimeOffset, IScheduler) オーバー ロード。 指定したソース、dueTime、スケジューラを使用して、期限別に監視可能なシーケンスを示します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド Distinct<T>() オーバー ロード。 指定したソースを持つ個別の要素のみを含む監視可能なシーケンスを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド Distinct<T>(IEqualityComparer<T>) オーバー ロード。 比較子に従って個別の要素のみを含む監視可能なシーケンスを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド Distinct<T、TKey>(Func<T、TKey>) オーバー ロード。 keySelector に従って個別の要素のみを含む監視可能なシーケンスを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド Distinct<T、TKey>(Func<T、TKey>、IEqualityComparer<TKey>) オーバー ロード。 keySelector に従って個別の要素のみを含む監視可能なシーケンスを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド DistinctUntilChanged<T>() オーバー ロード。 指定したソースを持つ個別の連続する要素のみを含む監視可能なシーケンスを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド DistinctUntilChanged<T>(IEqualityComparer<T>) オーバー ロード。 比較子に従って個別の連続する要素のみを含む監視可能なシーケンスを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド DistinctUntilChanged<T、TKey>(Func<T、TKey>) オーバー ロード。 keySelector に従って、個別の連続する要素のみを含む監視可能なシーケンスを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド DistinctUntilChanged<T、TKey>(Func<T、TKey>、IEqualityComparer<TKey>) オーバー ロード。 keySelector と比較子に従って、個別の連続する要素のみを含む監視可能なシーケンスを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド do<T>(Action<T>) オーバー ロード。 監視可能なシーケンス内の各要素に対してアクションを呼び出します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド Do<T>(IObserver<T>) オーバー ロード。 監視可能シーケンス内の各要素に対してアクションを呼び出し、監視可能シーケンスの例外的な終了時にアクションを呼び出します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド <T>(Action<T>, Action) オーバー ロード。 監視可能シーケンス内の各要素に対してアクションを呼び出し、監視可能シーケンスの正常終了時にアクションを呼び出します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド do<T>(Action<T>, Action<Exception>) オーバー ロード。 監視可能シーケンス内の各要素に対してアクションを呼び出し、監視可能シーケンスの例外的な終了時にアクションを呼び出します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド do<T>(Action<T>, Action<Exception>, Action) オーバー ロード。 監視可能なシーケンス内の各要素に対してアクションを呼び出し、監視可能なシーケンスの正常または例外的な終了時にアクションを呼び出します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド ElementAt<T> シーケンス内の指定したインデックス位置にある要素を返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド ElementAtOrDefault<T> シーケンス内の指定したインデックス位置にある要素を返します。インデックスが範囲外の場合は既定値を返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド 最後に T> を<する ソース監視可能シーケンスが正常に終了した後、または例外によって終了した後に、指定されたアクションを呼び出します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド First<T>() オーバー ロード。 指定したソースを持つ監視可能なシーケンスの最初の要素を返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド First<T>(Func<T, Boolean>) オーバー ロード。 述語に一致する監視可能なシーケンスの最初の要素を返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド FirstOrDefault<T>() オーバー ロード。 監視可能なシーケンスの最初の要素を返します。値が見つからない場合は既定値を返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド FirstOrDefault<T>(Func<T, Boolean>) オーバー ロード。 述語に一致する監視可能なシーケンスの最初の要素を返します。値が見つからない場合は既定値を返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド Foo<T、R> (myExtによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド ForEach<T> 監視可能なシーケンス内の各要素に対してアクションを呼び出し、シーケンスが終了するまでブロックします。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド GetEnumerator<T> 監視可能なシーケンスのすべての値を列挙する列挙子を返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド GroupBy<T、TKey>(Func<T、TKey>) オーバー ロード。 指定したキー セレクター関数に従って、監視可能なシーケンスの要素をグループ化します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド GroupBy<T、TKey>(Func<T、TKey>、IEqualityComparer<TKey>) オーバー ロード。 指定したキー セレクター関数と比較子に従って、監視可能なシーケンスの要素をグループ化します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド GroupBy<T、TKey、TElement>(Func<T、TKey>、Func<T、TElement>) オーバー ロード。 監視可能なシーケンスの要素をグループ化し、指定した関数を使用して結果の要素を選択します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド GroupBy<T、TKey、TElement>(Func<T、TKey>、Func<T、TElement>、IEqualityComparer<TKey>) オーバー ロード。 指定したキー セレクター関数と比較子に従って監視可能なシーケンスの要素をグループ化し、指定した関数を使用して結果の要素を選択します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド GroupByUntil<T、TKey、TDuration>(Func<T、TKey>、Func<IGroupedObservable<TKey、T>、IObservable<TDuration>>) オーバー ロード。 指定したキー セレクター関数に従って、監視可能なシーケンスの要素をグループ化します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド GroupByUntil<T,TKey, TDuration>(Func<T, TKey>, Func<IGroupedObservable<TKey, T>, IObservable<TDuration>>, IEqualityComparer<TKey>) オーバー ロード。 指定したキー セレクター関数と比較子に従って、監視可能なシーケンスの要素をグループ化します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド GroupByUntil<T,TKey, TElement, TDuration>(Func<T, TKey>, Func<T, TElement>, Func<IGroupedObservable<TKey, TElement>, IObservable<TDuration>>) オーバー ロード。 指定したキー セレクター関数に従って監視可能なシーケンスの要素をグループ化し、指定した関数を使用して結果の要素を選択します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド GroupByUntil<T, TKey、TElement、TDuration>(Func<T、TKey>、Func<T、TElement>、Func<IGroupedObservable<TKey、TElement>、IObservable<TDuration>>、IEqualityComparer<TKey>) オーバー ロード。 指定したキー セレクター関数と比較子に従って監視可能なシーケンスの要素をグループ化し、指定した関数を使用して結果の要素を選択します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド GroupJoin<T、TRight、TLeftDuration、TRightDuration、TResult> 重複する期間に基づいて 2 つのシーケンスの要素を関連付け、結果をグループ化します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド IgnoreElements<T> 終了メッセージのみを残したまま、監視可能なシーケンス内のすべての値を無視します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド 結合<T、TRight、TLeftDuration、TRightDuration、TResult> 重複する期間に基づいて、2 つのシーケンスの要素を関連付けます。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド last<T>() オーバー ロード。 指定したソースを持つ監視可能なシーケンスの最後の要素を返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド Last<T>(Func<T, Boolean>) オーバー ロード。 述語に一致する監視可能なシーケンスの最後の要素を返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド LastOrDefault<T>() オーバー ロード。 監視可能なシーケンス内の最後の要素を返します。値が見つからない場合は既定値を返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド LastOrDefault<T>(Func<T, Boolean>) オーバー ロード。 述語に一致する監視可能なシーケンスの最後の要素を返します。値が見つからない場合は既定値を返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド 最新のTする 観測可能なシーケンスの最新の値をサンプリングします。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド LongCount<T> 監視可能なシーケンス内の要素の合計数を表す Int64 を返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド <T> を具体化する 監視可能なシーケンスの暗黙的な通知を明示的な通知値として具体化します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド 最大<T>() オーバー ロード。 監視可能なシーケンス内の最大要素を返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド Max<T>(IComparer<T>) オーバー ロード。 指定した比較子に従って、監視可能なシーケンスの最大値を返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド MaxBy<T、TKey>(Func<T、TKey>) オーバー ロード。 最大キー値を持つ監視可能なシーケンス内の要素を返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド MaxBy<T、TKey>(Func<T、TKey>、IComparer<TKey>) オーバー ロード。 最大キー値を持つ監視可能なシーケンス内の要素を返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド <T>(IObservable<T>) をマージ オーバー ロード。 監視可能なシーケンスの観測可能なシーケンスを監視可能なシーケンスにマージします。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド Merge<T>(IObservable<T>, IScheduler) オーバー ロード。 2 つの観測可能なシーケンスを 1 つの監視可能なシーケンスにマージします。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド Min<T>() オーバー ロード。 監視可能なシーケンス内の最小要素を返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド Min<T>(IComparer<T>) オーバー ロード。 指定した比較子に従って、監視可能なシーケンスの最小値を返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド MinBy<T、TKey>(Func<T、TKey>) オーバー ロード。 最小キー値を持つ監視可能なシーケンス内の要素を返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド MinBy<T、TKey>(Func<T、TKey>、IComparer<TKey>) オーバー ロード。 指定された比較子に従って、最小キー値を持つ監視可能なシーケンス内の要素を返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド MostRecent<T> 観測可能なシーケンスの最新の値をサンプリングします。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド マルチキャスト<T、TResult>(ISubject<T、TResult>) オーバー ロード。 接続時にソース シーケンスが指定したサブジェクトに結果をプッシュする、接続可能な監視可能なシーケンスを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド マルチキャスト<T、TIntermediate、TResult>(Func<ISubject<T、TIntermediate>>、Func<IObservable<TIntermediate>、IObservable<TResult>>) オーバー ロード。 セレクター関数内でソース シーケンスをマルチキャストすることによって生成されたシーケンスの要素を含む監視可能なシーケンスを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド 次の<T> 監視可能なシーケンス内から次の値 (バッファリングなしでブロック) をサンプリングします。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド ObserveOn<T>(SynchronizationContext) オーバー ロード。 指定した同期コンテキストでオブザーバーに非同期的に通知します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド ObserveOn<T>(Control) オーバー ロード。 (ControlObservableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド ObserveOn<T>(Dispatcher) オーバー ロード。 (DispatcherObservableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド ObserveOn<T>(DispatcherScheduler) オーバー ロード。 (DispatcherObservableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド ObserveOn<T>(IScheduler) オーバー ロード。 指定したスケジューラでオブザーバーに非同期的に通知します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド ObserveOnDispatcher<T> (DispatcherObservableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド OnErrorResumeNext<T> 正常に終了するか、次の監視可能なシーケンスで例外によって終了される監視可能なシーケンスを続行します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド <T>() を発行する オーバー ロード。 基になるシーケンスに 1 つのサブスクリプションを共有する、接続可能な監視可能なシーケンスを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド <T>(T) を発行する オーバー ロード。 基になるシーケンスに 1 つのサブスクリプションを共有し、initialValue で始まる、接続可能な監視可能なシーケンスを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド Publish<T, TResult>(Func<IObservable<T>, IObservable<TResult>>) オーバー ロード。 基になるシーケンスに 1 つのサブスクリプションを共有する接続可能な監視可能シーケンスでセレクターを呼び出した結果である監視可能なシーケンスを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド Publish<T, TResult>(Func<IObservable<T>, IObservable<TResult>>, T) オーバー ロード。 基になるシーケンスに 1 つのサブスクリプションを共有し、initialValue で始まる、接続可能な監視可能なシーケンスを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド PublishLast<T>() オーバー ロード。 最後の通知のみを含む基になるシーケンスに 1 つのサブスクリプションを共有する、接続可能な監視可能なシーケンスを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド PublishLast<T, TResult>(Func<IObservable<T>, IObservable<TResult>>) オーバー ロード。 最後の通知のみを含む基になるシーケンスに対して 1 つのサブスクリプションを共有する、接続可能な監視可能なシーケンスでセレクターを呼び出した結果である監視可能なシーケンスを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド <T>() を繰り返す オーバー ロード。 監視可能なシーケンスを無期限に繰り返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド <T>(Int32) を繰り返します オーバー ロード。 監視可能なシーケンスを無期限に繰り返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド 再生<T>() オーバー ロード。 すべての通知を再生する基になるシーケンスに 1 つのサブスクリプションを共有する、接続可能な監視可能なシーケンスを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド リプレイ<T>(TimeSpan) オーバー ロード。 ウィンドウ内のすべての通知を再生する基になるシーケンスに 1 つのサブスクリプションを共有する、接続可能な監視可能なシーケンスを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド リプレイ<T>(Int32) オーバー ロード。 bufferSize 通知を再生する基になるシーケンスに 1 つのサブスクリプションを共有する、接続可能な監視可能なシーケンスを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド リプレイ<T>(IScheduler) オーバー ロード。 すべての通知を再生する基になるシーケンスに 1 つのサブスクリプションを共有する、接続可能な監視可能なシーケンスを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド 再生<T>(TimeSpan、IScheduler) オーバー ロード。 ウィンドウ内のすべての通知を再生する基になるシーケンスに 1 つのサブスクリプションを共有する、接続可能な監視可能なシーケンスを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド リプレイ<T>(Int32、IScheduler) オーバー ロード。 bufferSize 通知を再生する基になるシーケンスに 1 つのサブスクリプションを共有する、接続可能な監視可能なシーケンスを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド リプレイ<T>(Int32、TimeSpan) オーバー ロード。 ウィンドウ内の bufferSize 通知を再生する基になるシーケンスに 1 つのサブスクリプションを共有する、接続可能な監視可能なシーケンスを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド リプレイ<T>(Int32、TimeSpan、IScheduler) オーバー ロード。 ウィンドウ内の bufferSize 通知を再生する基になるシーケンスに 1 つのサブスクリプションを共有する、接続可能な監視可能なシーケンスを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド リプレイ<T,TResult>(Func<IObservable<T>, IObservable<TResult>>) オーバー ロード。 基になるシーケンスに 1 つのサブスクリプションを共有し、初期値で始まる、接続可能な監視可能なシーケンスでセレクターを呼び出した結果である監視可能なシーケンスを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド Replay<T, TResult>(Func<IObservable<T>, IObservable<TResult>>, IScheduler) オーバー ロード。 すべての通知を再生する基になるシーケンスに 1 つのサブスクリプションを共有する、接続可能な監視可能なシーケンスでセレクターを呼び出した結果である監視可能なシーケンスを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド Replay<T, TResult>(Func<IObservable<T>, IObservable<TResult>>, TimeSpan) オーバー ロード。 ウィンドウ内のすべての通知を再生する基になるシーケンスに 1 つのサブスクリプションを共有する、接続可能な監視可能なシーケンスでセレクターを呼び出した結果である監視可能なシーケンスを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド リプレイ<T,TResult>(Func<IObservable<T>, IObservable<TResult>>, Int32) オーバー ロード。 bufferSize 通知を再生する基になるシーケンスに対して 1 つのサブスクリプションを共有する、接続可能な監視可能なシーケンスでセレクターを呼び出した結果である監視可能なシーケンスを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド Replay<T, TResult>(Func<IObservable<T>, IObservable<TResult>>, TimeSpan, IScheduler) オーバー ロード。 ウィンドウ内のすべての通知を再生する基になるシーケンスに 1 つのサブスクリプションを共有する、接続可能な監視可能なシーケンスでセレクターを呼び出した結果である監視可能なシーケンスを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド Replay<T, TResult>(Func<IObservable<T>, IObservable<TResult>>, Int32, IScheduler) オーバー ロード。 bufferSize 通知を再生する基になるシーケンスに対して 1 つのサブスクリプションを共有する、接続可能な監視可能なシーケンスでセレクターを呼び出した結果である監視可能なシーケンスを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド Replay<T, TResult>(Func<IObservable<T>, IObservable<TResult>>, Int32, TimeSpan) オーバー ロード。 ウィンドウ内で bufferSize 通知を再生する基になるシーケンスに対して 1 つのサブスクリプションを共有する、接続可能な監視可能なシーケンスでセレクターを呼び出した結果である監視可能なシーケンスを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド Replay<T, TResult>(Func<IObservable<T>, IObservable<TResult>>, Int32, TimeSpan, IScheduler) オーバー ロード。 ウィンドウ内で bufferSize 通知を再生する基になるシーケンスに対して 1 つのサブスクリプションを共有する、接続可能な監視可能なシーケンスでセレクターを呼び出した結果である監視可能なシーケンスを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド 再試行<T>() オーバー ロード。 正常に終了するまで、ソース監視可能シーケンスを繰り返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド 再試行<T>(Int32) オーバー ロード。 正常に終了するまで、ソース監視可能シーケンスを繰り返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド サンプル<T>(TimeSpan) オーバー ロード。 各間隔で観測可能なシーケンスをサンプリングします。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド サンプル<T>(TimeSpan、IScheduler) オーバー ロード。 指定したソース、間隔、スケジューラを使用して、各間隔で監視可能なシーケンスをサンプリングします。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド サンプル<T、TSample>(IObservable<TSample>) オーバー ロード。 指定したソースとサンプラーを使用して、サンプリング ティックで監視可能なシーケンスをサンプリングします。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド スキャン<T>(Func<T, T, T>) オーバー ロード。 観測可能なシーケンスにアキュムレータ関数を適用し、指定されたソースとアキュムレータを使用して各中間結果を返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド スキャン<T、TAccumulate>(TAccumulate、Func<TAccumulate、T、TAccumulate>) オーバー ロード。 観測可能なシーケンスにアキュムレータ関数を適用し、指定されたソース、シード、アキュムレータを使用して各中間結果を返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド <T、TResult>(Func<T、TResult>) を選択 オーバー ロード。 監視可能なシーケンスの各要素を、指定されたソースとセレクターを使用して新しいフォームに投影します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド T、TResult<>(Func<T、Int32、TResult>) を選択 オーバー ロード。 指定したソースとセレクターを使用して要素のインデックスを組み込むことで、監視可能なシーケンスの各要素を新しいフォームに投影します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド SelectMany<T,TOther>(IObservable<TOther>) オーバー ロード。 観測可能シーケンスの各要素を監視可能なシーケンスに投影し、結果として得られる観測可能なシーケンスを 1 つの観測可能なシーケンスにフラット化します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド SelectMany<T, TResult>(Func<T, IObservable<TResult>>) オーバー ロード。 観測可能シーケンスの各要素を監視可能なシーケンスに投影し、結果として得られる観測可能なシーケンスを 1 つの観測可能なシーケンスにフラット化します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド SelectMany<T, TResult>(Func<T, IEnumerable<TResult>>) オーバー ロード。 観測可能シーケンスの各要素を監視可能なシーケンスに投影し、結果として得られる観測可能なシーケンスを 1 つの観測可能なシーケンスにフラット化します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド SelectMany<T, TResult>(Func<T, IObservable<TResult>>, Func<Exception, IObservable<TResult>>, Func<IObservable<TResult>>) オーバー ロード。 観測可能シーケンスの各要素を監視可能なシーケンスに投影し、結果として得られる観測可能なシーケンスを 1 つの観測可能なシーケンスにフラット化します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド SelectMany<T,TCollection, TResult>(Func<T, IEnumerable<TCollection>>, Func<T, TResult>) オーバー ロード。 観測可能シーケンスの各要素を監視可能なシーケンスに投影し、結果として得られる観測可能なシーケンスを 1 つの観測可能なシーケンスにフラット化します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド SelectMany<T、TCollection、TResult>(Func<T、IObservable<TCollection>>、Func<T、TCollection、TResult>) オーバー ロード。 観測可能シーケンスの各要素を監視可能なシーケンスに投影し、結果として得られる観測可能なシーケンスを 1 つの観測可能なシーケンスにフラット化します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド SequenceEqual<T>(IObservable<T>) オーバー ロード。 要素をペアで比較して、2 つのシーケンスが等しいかどうかを判断します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド SequenceEqual<T>(IObservable<T>, IEqualityComparer<T>) オーバー ロード。 指定した等値比較子を使用して要素をペアで比較することで、2 つのシーケンスが等しいかどうかを判断します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド Single<T>() オーバー ロード。 監視可能なシーケンスの唯一の要素を返し、監視可能なシーケンスに要素が 1 つだけ存在しない場合は例外をスローします。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド Single<T>(Func<T, Boolean>) オーバー ロード。 述語に一致する監視可能なシーケンスの唯一の要素を返し、監視可能なシーケンスに要素が 1 つだけ存在しない場合は例外をスローします。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド SingleOrDefault<T>() オーバー ロード。 監視可能シーケンスの唯一の要素を返します。監視可能なシーケンスが空の場合は既定値を返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド SingleOrDefault<T>(Func<T, Boolean>) オーバー ロード。 述語と一致する監視可能なシーケンスの唯一の要素を返します。値が見つからない場合は既定値を返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド スキップ<T> 監視可能なシーケンス内の指定された数の値をバイパスし、残りの値を返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド SkipLast<T> 観測可能なシーケンスの末尾にある指定された数の要素をバイパスします。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド SkipUntil<T、TOther> 他の監視可能なシーケンスが値を生成した後にのみ、ソース監視可能シーケンスから値を返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド SkipWhile<T>(Func<T, Boolean>) オーバー ロード。 指定した条件が true である限り、監視可能なシーケンス内の値をバイパスし、残りの値を返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド SkipWhile<T>(Func<T, Int32, Boolean>) オーバー ロード。 指定した条件が true である限り、監視可能なシーケンス内の値をバイパスし、残りの値を返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド StartWith<T>T[]) オーバー ロード。 指定したソースと値を使用して、監視可能なシーケンスに値のシーケンスを付加します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド StartWith<T>(IScheduler, T[]) オーバー ロード。 指定したソース、スケジューラ、および値を使用して、監視可能なシーケンスの前に値のシーケンスを追加します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド < >() をサブスクライブする オーバー ロード。 指定したソースで監視可能なシーケンスを評価します。 (ObservableExtensionsによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド <T>のサブスクライブ (アクション<T>) オーバー ロード。 監視可能なシーケンスに対して要素ハンドラーをサブスクライブします。 (ObservableExtensionsによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド サブスクライブ<T>(アクション<T>、 アクション<例外>) オーバー ロード。 要素ハンドラーと例外ハンドラーを監視可能なシーケンスにサブスクライブします。 (ObservableExtensionsによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド <T>(Action<T>, Action) オーバー ロード。 要素ハンドラーと完了ハンドラーを監視可能なシーケンスにサブスクライブします。 (ObservableExtensionsによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド サブスクライブ<T>(Action<T>, Action<Exception>, Action) オーバー ロード。 要素ハンドラー、例外ハンドラー、および完了ハンドラーを監視可能なシーケンスにサブスクライブします。 (ObservableExtensionsによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド SubscribeOn<T>(SynchronizationContext) オーバー ロード。 指定した同期コンテキストでオブザーバーを非同期的にサブスクライブおよびサブスクライブ解除します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド SubscribeOn<T>(コントロール) オーバー ロード。 (ControlObservableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド SubscribeOn<T>(Dispatcher) オーバー ロード。 (DispatcherObservableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド SubscribeOn<T>(DispatcherScheduler) オーバー ロード。 (DispatcherObservableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド SubscribeOn<T>(IScheduler) オーバー ロード。 指定したスケジューラでオブザーバーを非同期的にサブスクライブおよびサブスクライブ解除します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド SubscribeOnDispatcher<T> (DispatcherObservableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド <T>() を同期する オーバー ロード。 監視可能なシーケンスを同期します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド <T>(オブジェクト) を同期する オーバー ロード。 監視可能なシーケンスを同期します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド < > を取る 監視可能なシーケンスの先頭から、指定した数の連続した値を返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド TakeLast<T> 観測可能なシーケンスの末尾から、指定した数の連続する要素を返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド TakeUntil<T、TOther> 他の監視可能なシーケンスが値を生成するまで、ソース監視可能シーケンスから値を返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド TakeWhile<T>(Func<T, Boolean>) オーバー ロード。 指定した条件が true である限り、監視可能なシーケンスから値を返し、残りの値をスキップします。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド TakeWhile<T>(Func<T,Int32, Boolean>) オーバー ロード。 指定した条件が true である限り、監視可能なシーケンスから値を返し、残りの値をスキップします。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド T、TResult> を<します 監視可能なシーケンスに使用可能な値がある場合に一致し、値を投影します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド スロットル<T>(TimeSpan) オーバー ロード。 指定した source と dueTime の期限前に別の値が続く、監視可能なシーケンスの値を無視します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド スロットル<T>(TimeSpan、IScheduler) オーバー ロード。 指定したソース、dueTime、スケジューラで期限前に別の値が続く監視可能なシーケンスの値を無視します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド TimeInterval<T>() オーバー ロード。 指定したソースを使用して、監視可能なシーケンス内の連続する値間の時間間隔を記録します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド TimeInterval<T>(IScheduler) オーバー ロード。 指定したソースとスケジューラを使用して、監視可能なシーケンス内の連続する値間の時間間隔を記録します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド タイムアウト<T>(TimeSpan) オーバー ロード。 dueTime が経過した場合は、監視可能なシーケンスまたは TimeoutException のいずれかを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド タイムアウト<T>(DateTimeOffset) オーバー ロード。 dueTime が経過した場合は、監視可能なシーケンスまたは TimeoutException を返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド タイムアウト<T>(TimeSpan、IObservable<T>) オーバー ロード。 dueTime が経過した場合は、ソース監視可能シーケンスまたはその他の監視可能なシーケンスを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド タイムアウト<T>(DateTimeOffset、IObservable<T>) オーバー ロード。 dueTime が経過した場合は、監視可能なシーケンスまたは TimeoutException のいずれかを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド タイムアウト<T>(TimeSpan、IScheduler) オーバー ロード。 dueTime が経過した場合は、監視可能なシーケンスまたは TimeoutException のいずれかを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド タイムアウト<T>(DateTimeOffset、IScheduler) オーバー ロード。 dueTime が経過した場合は、監視可能なシーケンスまたは TimeoutException のいずれかを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド タイムアウト<T>(TimeSpan、IObservable<T>、IScheduler) オーバー ロード。 dueTime が経過した場合は、ソース監視可能シーケンスまたはその他の監視可能なシーケンスを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド タイムアウト<T>(DateTimeOffset、IObservable<T>、IScheduler) オーバー ロード。 dueTime が経過した場合は、ソース監視可能シーケンスまたはその他の監視可能なシーケンスを返します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド タイムスタンプ<T>() オーバー ロード。 指定されたソースを持つ監視可能なシーケンス内の各値のタイムスタンプを記録します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド Timestamp<T>(IScheduler) オーバー ロード。 指定したソースとスケジューラを使用して、監視可能なシーケンス内の各値のタイムスタンプを記録します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド ToArray<T> 監視可能なシーケンスから配列を作成します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド ToDictionary<T、TKey>(Func<T、TKey>) オーバー ロード。 指定したキー セレクター関数に従って、監視可能なシーケンスからディクショナリを作成します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド ToDictionary<T、TKey>(Func<T、TKey>、IEqualityComparer<TKey>) オーバー ロード。 指定したキー セレクター関数と比較子に従って、監視可能なシーケンスからディクショナリを作成します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド ToDictionary<T、TKey、TElement>(Func<T、TKey>、Func<T、TElement>) オーバー ロード。 指定したキー セレクター関数と要素セレクター関数に従って、監視可能なシーケンスからディクショナリを作成します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド ToDictionary<T、TKey、TElement>(Func<T、TKey>、Func<T、TElement>、IEqualityComparer<TKey>) オーバー ロード。 指定したキー セレクター関数、比較子、および要素セレクター関数に従って、監視可能なシーケンスからディクショナリを作成します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド ToEnumerable<T> 監視可能なシーケンスを列挙可能なシーケンスに変換します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド ToEvent<T> 指定したソースを持つ .NET イベントを持つオブジェクトとして、監視可能なシーケンスを公開します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド ToList<T> 監視可能なシーケンスからリストを作成します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド ToLookup<T、TKey>(Func<T、TKey>) オーバー ロード。 指定したキー セレクター関数に従って、監視可能なシーケンスから参照を作成します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド ToLookup<T、TKey>(Func<T、TKey>、IEqualityComparer<TKey>) オーバー ロード。 指定したキー セレクター関数と比較子に従って、監視可能なシーケンスから参照を作成します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド ToLookup<T、TKey、TElement>(Func<T、TKey>、Func<T、TElement>) オーバー ロード。 指定したキー セレクター関数と要素セレクター関数に従って、監視可能なシーケンスから参照を作成します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド ToLookup<T、TKey、TElement>(Func<T、TKey>、Func<T、TElement>、IEqualityComparer<TKey>) オーバー ロード。 指定したキー セレクター関数、比較子、および要素セレクター関数に従って、監視可能なシーケンスから参照を作成します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド ToNotifier<T> オブザーバーから通知コールバックを作成します。 (オブザーバーによって定義
パブリック拡張メソッドパブリック拡張メソッド ToTask<T>() オーバー ロード。 監視可能シーケンスの最後の値を含むタスクを返します。 (TaskObservableExtensionsによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド ToTask<T>(オブジェクト) オーバー ロード。 監視可能シーケンスの最後の値を含むタスクを返します。 (TaskObservableExtensionsによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド ToTask<T>(CancellationToken) オーバー ロード。 監視可能シーケンスの最後の値を含むタスクを返します。 (TaskObservableExtensionsによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド ToTask<T>(CancellationToken, Object) オーバー ロード。 監視可能シーケンスの最後の値を含むタスクを返します。 (TaskObservableExtensionsによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド <T>(Func<T, Boolean>) オーバー ロード。 述語に基づいて監視可能なシーケンスの要素をフィルター処理します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド <T>(Func<T,Int32, Boolean>) オーバー ロード。 要素のインデックスを組み込むことで、述語に基づいて監視可能なシーケンスの要素をフィルター処理します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド ウィンドウ<T>(Int32) オーバー ロード。 観測可能シーケンスの各要素を、要素数情報に基づいて生成される連続する重複しないウィンドウに投影します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド ウィンドウ<T>(TimeSpan) オーバー ロード。 監視可能シーケンスの各要素を、タイミング情報に基づいて生成される連続する重複しないウィンドウに投影します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド ウィンドウ<T>(Int32、Int32) オーバー ロード。 監視可能シーケンスの各要素を、要素数情報に基づいて生成される 0 個以上のウィンドウに投影します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド ウィンドウ<T>(TimeSpan、IScheduler) オーバー ロード。 監視可能シーケンスの各要素を、タイミング情報に基づいて生成される連続する重複しないウィンドウに投影します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド ウィンドウ<T>(TimeSpan、TimeSpan) オーバー ロード。 監視可能シーケンスの各要素を、タイミング情報に基づいて生成される 0 個以上のウィンドウに投影します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド ウィンドウ<T>(TimeSpan、Int32) オーバー ロード。 監視可能なシーケンスの各要素を、完全または特定の時間が経過したときに完了したウィンドウに投影します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド ウィンドウ<T>(TimeSpan、TimeSpan、IScheduler) オーバー ロード。 監視可能シーケンスの各要素を、タイミング情報に基づいて生成される 0 個以上のウィンドウに投影します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド ウィンドウ<T>(TimeSpan、Int32、IScheduler) オーバー ロード。 監視可能なシーケンスの各要素を、完全または特定の時間が経過したときに完了したウィンドウに投影します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド ウィンドウ<T、TWindowClosing>(Func<IObservable<TWindowClosing>>) オーバー ロード。 観測可能なシーケンスの各要素を、連続する重複しないウィンドウに投影します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド ウィンドウ<T、TWindowOpening、TWindowClosing>(IObservable<TWindowOpening>、Func<TWindowOpening、IObservable<TWindowClosing>>) オーバー ロード。 監視可能なシーケンスの各要素を 0 個以上のウィンドウに投影します。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド Zip<T、TSecond、TResult>(IObservable<TSecond>、Func<T、TResult>) オーバー ロード。 2 つの観測可能なシーケンスを、ペアごとの方法で要素を組み合わせることにより、1 つの観測可能なシーケンスにマージします。 (Observableによって定義されます)。
パブリック拡張メソッドパブリック拡張メソッド Zip<T、TSecond、TResult>(IEnumerable<TSecond>、Func<T、TSecond、TResult>) オーバー ロード。 セレクター関数を使用して、監視可能なシーケンスと列挙可能なシーケンスを 1 つの監視可能なシーケンスにマージします。 (Observableによって定義されます)。

ページのトップへ

備考

ISubject インターフェイスを実装すると、カスタム動作を使用して独自のサブジェクトを作成できます。

次のコード例では、メソッドの実行をコンソール ウィンドウにエコーアウトするだけのサブジェクトの例を実装しています。

using System;
using System.Collections.Generic;
using System.Reactive.Linq;
using System.Reactive.Subjects;
using System.Reactive.Concurrency;
using System.Reactive.Disposables;

namespace Example
{
  class Program
  {
    static void Main()
    {
      //************************************************************************************//
      //*** The ConsoleEchoSubject will just echo it's method calls out to the console   ***//
      //*** window.                                                                      ***//
      //***                                                                              ***//
      //*** Create an instance of the ConsoleEchoSubject and subscribe to a sequence of  ***//
      //*** the first 5 integers returned by the Interval operator.                      ***//
      //***                                                                              ***//
      //************************************************************************************//

      ConsoleEchoSubject<long> mySubject = new ConsoleEchoSubject<long>();
      var obs = Observable.Interval(TimeSpan.FromSeconds(1), Scheduler.ThreadPool).Take(5);
      Console.WriteLine("Subscribing ConsoleEchoSubject to observable sequence.\n");
      obs.Subscribe(mySubject);


      //************************************************************************************//
      //*** Subscribe to the subject's observable interface. Each value will be written  ***//
      //*** to the console window.                                                       ***//
      //************************************************************************************//

      IDisposable subscription = mySubject.Subscribe(x => Console.WriteLine(x), () => 
      {
        Console.WriteLine("\nSequence Completed.\n");
        Console.WriteLine("Press ENTER to exit...");
      });

      Console.ReadLine();


      //***************************************//
      //*** Explicitly releasing resources. ***//
      //***************************************//

      subscription.Dispose();
      mySubject.Dispose();
    }
  }



  //************************************************************************************//
  //***                                                                              ***//
  //*** The ConsoleEchoSubject will just echo it's method calls out to the console   ***//
  //*** window.                                                                      ***//
  //***                                                                              ***//
  //************************************************************************************//

  class ConsoleEchoSubject<T> : ISubject<T>, IDisposable
  { 
    private List<IObserver<T>> observerList;     
    private bool isDisposed;
    private bool isStopped;
    object gate = new object();
    Exception exception;

    public ConsoleEchoSubject()
    {
      observerList = new List<IObserver<T>>();     
    }

    public void OnCompleted()
    {      
      //****************************************************************************************//
      //*** Make sure the OnCompleted operation is not preempted by another operation        ***//
      //*** which would break the expected behavior.  For example, don't allow an error from ***//
      //*** OnError preempt OnCompleted from anotther thread. Then OnCompleted would follow  ***//
      //*** an error.  That would be an incorrect behavior.                                  ***//
      //****************************************************************************************//

      lock (gate) 
      {
        CheckDisposed();

        if (!isStopped)
        {
          Console.WriteLine("\nConsoleEchoSubject : OnCompleted()");

          foreach (IObserver<T> observer in observerList)
          {
            observer.OnCompleted();
          }

          observerList.Clear();
          isStopped = true;
        }
      }
    }

    public void OnError(Exception error)
    {
      if (error == null)
        throw new ArgumentException("Exception error should not be null.");

      //****************************************************************************************//
      //*** Make sure the OnError operation is not preempted by another operation which      ***//
      //*** would break the expected behavior.  For example, don't allow unsubscribe or an   ***//
      //*** OnCompleted operation to preempt OnError from another thread. This would result  ***//
      //*** in an error following completion.  That would be an incorrect behavior.          ***//
      //****************************************************************************************//

      lock (gate) 
      {
        CheckDisposed();

        if (!isStopped)
        {
          Console.WriteLine("\nConsoleEchoSubject : OnError({0})", error.Message);

          exception = error;

          foreach (IObserver<T> observer in observerList)
          {
            observer.OnError(error);
          }

          observerList.Clear();
          isStopped = true;  
        }
      }
    }

    public void OnNext(T value)
    {
      //****************************************************************************************//
      //*** Make sure the OnNext operation is not preempted by another operation which       ***//
      //*** would break the expected behavior.  For example, don't allow unsubscribe, errors ***//
      //*** or an OnCompleted operation to preempt OnNext from another thread. This would    ***//
      //*** have the result of items in a sequence following completion, errors, or          ***//
      //*** unsubscribe.  That would be an incorrect behavior.                               ***//
      //****************************************************************************************//

      lock (gate)
      {
        CheckDisposed();

        if (!isStopped)
        {
          Console.WriteLine("\nConsoleEchoSubject : OnNext({0})", value.ToString());

          foreach (IObserver<T> observer in observerList)
          {
            observer.OnNext(value);
          }
        }
      }
    } 

    public IDisposable Subscribe(IObserver<T> observer)
    {
      if (observer == null)
        throw new ArgumentException("observer should not BehaviorSubject null.");

      //****************************************************************************************//
      //*** Make sure Subscribe occurs in sync with the other operations so we keep the      ***//
      //*** correct behavior depending on whether an error has occurred or the observable    ***//
      //*** sequence has completed.                                                          ***//
      //****************************************************************************************//

      lock (gate)
      {
        CheckDisposed();

        if (!isStopped)
        {
          Console.WriteLine("\nConsoleEchoSubject : Creating new subscription.");
          observerList.Add(observer);
          return new Subscription(observer, this);
        }
        else if(exception != null)
        {
          observer.OnError(exception);
          return Disposable.Empty;
        }
        else
        {
          observer.OnCompleted();
          return Disposable.Empty;
        }
      }
    }

    private void Unsubscribe(IObserver<T> observer)
    {
      //****************************************************************************************//
      //*** Make sure Unsubscribe occurs in sync with the other operations so we keep the    ***//
      //*** correct behavior.                                                                ***//
      //****************************************************************************************//

      lock (gate)
      {
        Console.WriteLine("\nConsoleEchoSubject : Unsubscribing subscription.");
        observerList.Remove(observer);
      }
    }

    public void  Dispose()
    {
      //****************************************************************************************//
      //*** Make sure Dispose occurs in sync with the other operations so we keep the        ***//
      //*** correct behavior. For example, Dispose shouldn't preempt the other operations    ***//
      //*** changing state variables after they have been checked.                           ***//
      //****************************************************************************************//

      lock (gate)
      {
        Console.WriteLine("\nConsoleEchoSubject : Disposing resources.");
        observerList.Clear();
        isStopped = true;
        isDisposed = true;
      }
    }

    private void CheckDisposed()
    {
      if (isDisposed)
        throw new ObjectDisposedException("Subject has been disposed.");
    }


    //************************************************************************************//
    //***                                                                              ***//
    //*** The Subscription class wraps each observer that creates a subscription. This ***//
    //*** is needed to expose an IDisposable interface through which a observer can    ***//
    //*** cancel the subscription.                                                     ***//
    //***                                                                              ***//
    //************************************************************************************//

    class Subscription : IDisposable
    {
      private ConsoleEchoSubject<T> subject;
      private IObserver<T> observer;

      public Subscription(IObserver<T> obs, ConsoleEchoSubject<T> sub)
      {
        subject = sub;
        observer = obs;
      }

      public void Dispose()
      {
        subject.Unsubscribe(observer);  
      }
    }
  }
}

コード例によって次の出力が生成されました。

Subscribing ConsoleEchoSubject to observable sequence.


ConsoleEchoSubject : Creating new subscription.

ConsoleEchoSubject : OnNext(0)
0

ConsoleEchoSubject : OnNext(1)
1

ConsoleEchoSubject : OnNext(2)
2

ConsoleEchoSubject : OnNext(3)
3

ConsoleEchoSubject : OnNext(4)
4

ConsoleEchoSubject : OnCompleted()

Sequence Completed.

Press ENTER to exit...


ConsoleEchoSubject : Unsubscribing subscription.

ConsoleEchoSubject : Disposing resources.

C:\

関連項目

参考

System.Reactive.Subjects 名前空間の