<PackageReference Include="System.Reactive" Version="4.2.2" />

Synchronization

public static class Synchronization
Provides basic synchronization and scheduling services for observable sequences.
public static IObservable<TSource> ObserveOn<TSource>(IObservable<TSource> source, IScheduler scheduler)

Wraps the source sequence in order to run its observer callbacks on the specified scheduler.

public static IObservable<TSource> ObserveOn<TSource>(IObservable<TSource> source, SynchronizationContext context)

Wraps the source sequence in order to run its observer callbacks on the specified synchronization context.

public static IObservable<TSource> SubscribeOn<TSource>(IObservable<TSource> source, IScheduler scheduler)

Wraps the source sequence in order to run its subscription and unsubscription logic on the specified scheduler.

public static IObservable<TSource> SubscribeOn<TSource>(IObservable<TSource> source, SynchronizationContext context)

Wraps the source sequence in order to run its subscription and unsubscription logic on the specified synchronization context.

public static IObservable<TSource> Synchronize<TSource>(IObservable<TSource> source)

Wraps the source sequence in order to ensure observer callbacks are properly serialized.

public static IObservable<TSource> Synchronize<TSource>(IObservable<TSource> source, object gate)

Wraps the source sequence in order to ensure observer callbacks are synchronized using the specified gate object.