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

IConcurrencyAbstractionLayer

public interface IConcurrencyAbstractionLayer
(Infrastructure) Concurrency abstraction layer interface.
bool SupportsLongRunning { get; }

Gets whether long-running scheduling is supported.

IDisposable QueueUserWorkItem(Action<object> action, object state)

Queues a method for execution.

void Sleep(TimeSpan timeout)

Blocking sleep operation.

Queues a method for periodic execution based on the specified period.

Starts a new stopwatch object.

void StartThread(Action<object> action, object state)

Starts a new long-running thread.

IDisposable StartTimer(Action<object> action, object state, TimeSpan dueTime)

Queues a method for execution at the specified relative time.