IConcurrencyAbstractionLayer
(Infrastructure) Concurrency abstraction layer interface.
            
                using System.ComponentModel;
using System.Runtime.CompilerServices;
namespace System.Reactive.Concurrency
{
    [System.Runtime.CompilerServices.NullableContext(1)]
    [EditorBrowsable(EditorBrowsableState.Never)]
    public interface IConcurrencyAbstractionLayer
    {
        bool SupportsLongRunning { get; }
        IDisposable StartTimer([System.Runtime.CompilerServices.Nullable(new byte[] {
            1,
            2
        })] Action<object> action, [System.Runtime.CompilerServices.Nullable(2)] object state, TimeSpan dueTime);
        IDisposable StartPeriodicTimer(Action action, TimeSpan period);
        IDisposable QueueUserWorkItem([System.Runtime.CompilerServices.Nullable(new byte[] {
            1,
            2
        })] Action<object> action, [System.Runtime.CompilerServices.Nullable(2)] object state);
        void Sleep(TimeSpan timeout);
        IStopwatch StartStopwatch();
        [System.Runtime.CompilerServices.NullableContext(2)]
        void StartThread([System.Runtime.CompilerServices.Nullable(new byte[] {
            1,
            2
        })] Action<object> action, object state);
    }
}