TaskObservationOptions
Controls how completion or failure is handled when a Task or
Task<T> is wrapped as an IObservable<T> and observed by
an IObserver<T>.
using System.Runtime.CompilerServices;
namespace System.Reactive.Concurrency
{
[System.Runtime.CompilerServices.NullableContext(2)]
[System.Runtime.CompilerServices.Nullable(0)]
public sealed class TaskObservationOptions
{
[System.Runtime.CompilerServices.Nullable(0)]
internal readonly struct Value
{
public IScheduler Scheduler { get; }
public bool IgnoreExceptionsAfterUnsubscribe { get; }
internal Value(IScheduler scheduler, bool ignoreExceptionsAfterUnsubscribe)
{
Scheduler = scheduler;
IgnoreExceptionsAfterUnsubscribe = ignoreExceptionsAfterUnsubscribe;
}
}
public IScheduler Scheduler { get; }
public bool IgnoreExceptionsAfterUnsubscribe { get; }
public TaskObservationOptions(IScheduler scheduler, bool ignoreExceptionsAfterUnsubscribe)
{
Scheduler = scheduler;
IgnoreExceptionsAfterUnsubscribe = ignoreExceptionsAfterUnsubscribe;
}
internal Value ToValue()
{
return new Value(Scheduler, IgnoreExceptionsAfterUnsubscribe);
}
}
}