Publish(TSource, TResult) Method (IObservable(TSource), Func(IObservable(TSource), IObservable(TResult)), TSource)

Observable::Publish<TSource, TResult> Method (IObservable<TSource>, Func<IObservable<TSource>, IObservable<TResult>>, TSource)

Returns a connectable observable sequence that shares a single subscription to the underlying sequence and starts with initialValue.

Namespace:  System.Reactive.Linq
Assembly:  System.Reactive (in System.Reactive.dll)

generic<typename TSource, typename TResult>
static IObservable<TResult>^ Publish(
	IObservable<TSource>^ source, 
	Func<IObservable<TSource>^, IObservable<TResult>^>^ selector, 
	TSource initialValue

Type Parameters


The type of source.


The type of Result.


Type: System::IObservable<TSource>
The source sequence whose elements will be multicasted through a single shared subscription.
Type: System::Func<IObservable<TSource>, IObservable<TResult>>
The selector function which can use the multicasted source sequence as many times as needed, without causing multiple subscriptions to the source sequence.
Type: TSource
The initial value received by observers upon subscription.

Return Value

Type: System::IObservable<TResult>
An observable sequence that contains the elements of a sequence produced by multicasting the source sequence within a selector function.

Usage Note

In Visual Basic and C#, you can call this method as an instance method on any object of type IObservable<TSource>. When you use instance method syntax to call this method, omit the first parameter. For more information, see or
© 2016 Microsoft