Namespace System.Reactive.Concurrency
Classes
AsyncLock
Asynchronous lock.
CurrentThreadScheduler
Represents an object that schedules units of work on the current thread.
DefaultScheduler
Represents an object that schedules units of work on the platform's default scheduler.
EventLoopScheduler
Represents an object that schedules units of work on a designated thread.
HistoricalScheduler
Provides a virtual time scheduler that uses DateTimeOffset for absolute time and TimeSpan for relative time.
HistoricalSchedulerBase
Base class for historical schedulers, which are virtual time schedulers that use DateTimeOffset for absolute time and TimeSpan for relative time.
ImmediateScheduler
Represents an object that schedules units of work to run immediately on the current thread.
LocalScheduler
Abstract base class for machine-local schedulers, using the local system clock for time-based operations.
NewThreadScheduler
Represents an object that schedules each unit of work on a separate thread.
ScheduledItem<TAbsolute>
Abstract base class for scheduled work items.
ScheduledItem<TAbsolute, TValue>
Represents a scheduled work item based on the materialization of an IScheduler.Schedule method call.
Scheduler
Provides a set of static properties to access commonly used schedulers.
SchedulerQueue<TAbsolute>
Efficient scheduler queue that maintains scheduled items sorted by absolute time.
Synchronization
Provides basic synchronization and scheduling services for observable sequences.
SynchronizationContextScheduler
Represents an object that schedules units of work on a provided SynchronizationContext.
TaskPoolScheduler
Represents an object that schedules units of work on the Task Parallel Library (TPL) task pool.
ThreadPoolScheduler
Represents an object that schedules units of work on the CLR thread pool.
VirtualTimeScheduler<TAbsolute, TRelative>
Base class for virtual time schedulers using a priority queue for scheduled items.
VirtualTimeSchedulerBase<TAbsolute, TRelative>
Base class for virtual time schedulers.
VirtualTimeSchedulerExtensions
Provides a set of extension methods for virtual time scheduling.
Interfaces
IConcurrencyAbstractionLayer
(Infrastructure) Concurrency abstraction layer interface.
IScheduledItem<TAbsolute>
Represents a work item that has been scheduled.
IScheduler
Represents an object that schedules units of work.
ISchedulerLongRunning
Scheduler with support for starting long-running tasks. This type of scheduler can be used to run loops more efficiently instead of using recursive scheduling.
ISchedulerPeriodic
Scheduler with support for running periodic tasks. This type of scheduler can be used to run timers more efficiently instead of using recursive scheduling.
IStopwatch
Abstraction for a stopwatch to compute time relative to a starting point.
IStopwatchProvider
Provider for IStopwatch objects.