System.Reactive.Concurrency.VirtualTimeSchedulerBase<TAbsolute, TRelative>
public abstract class VirtualTimeSchedulerBase<TAbsolute, TRelative> : IScheduler, IServiceProvider, IStopwatchProvider where TAbsolute : IComparable<TAbsolute>
namespace System.Reactive.Concurrency
{
public abstract class VirtualTimeSchedulerBase<[Nullable(0)] TAbsolute, [Nullable(2)] TRelative> : IScheduler, IServiceProvider, IStopwatchProvider where TAbsolute : IComparable<TAbsolute>
{
public bool IsEnabled { get; }
protected IComparer<TAbsolute> Comparer { get; }
public TAbsolute Clock { get; set; }
public DateTimeOffset Now { get; }
protected VirtualTimeSchedulerBase();
protected VirtualTimeSchedulerBase(TAbsolute initialClock, IComparer<TAbsolute> comparer);
protected abstract TAbsolute Add(TAbsolute absolute, TRelative relative);
protected abstract DateTimeOffset ToDateTimeOffset(TAbsolute absolute);
protected abstract TRelative ToRelative(TimeSpan timeSpan);
public abstract IDisposable ScheduleAbsolute<[Nullable(2)] TState>(TState state, TAbsolute dueTime, Func<IScheduler, TState, IDisposable> action);
public IDisposable ScheduleRelative<[Nullable(2)] TState>(TState state, TRelative dueTime, Func<IScheduler, TState, IDisposable> action);
public IDisposable Schedule<[Nullable(2)] TState>(TState state, Func<IScheduler, TState, IDisposable> action);
public IDisposable Schedule<[Nullable(2)] TState>(TState state, TimeSpan dueTime, Func<IScheduler, TState, IDisposable> action);
public IDisposable Schedule<[Nullable(2)] TState>(TState state, DateTimeOffset dueTime, Func<IScheduler, TState, IDisposable> action);
public void Start();
public void Stop();
public void AdvanceTo(TAbsolute time);
public void AdvanceBy(TRelative time);
public void Sleep(TRelative time);
protected abstract IScheduledItem<TAbsolute> GetNext();
protected virtual object GetService(Type serviceType);
public IStopwatch StartStopwatch();
}
}