Skip to content

WasmSequencer class

Attributes: [DebuggerDisplay("{DebuggerDisplay,nq}")]

Defined in

Namespace: ReactiveUI.Primitives.Concurrency Assembly: ReactiveUI.Primitives.dll Full name: ReactiveUI.Primitives.Concurrency.WasmSequencer Modifiers: public sealed

Summary

View source

Task-pool replacement for single-threaded event-loop runtimes such as browser WebAssembly: it never starts threads and never blocks. Immediate work is batched one drain per event-loop turn through a zero-due timer (a setTimeout(0) macrotask on WebAssembly, so the browser can render between batches); delayed work uses the shared timer, which the WebAssembly runtime backs with the JS event loop.

Applies to

net10.0, net10.0-android36.0, net10.0-ios26.0, net10.0-macos26.0, net10.0-tvos26.0, net10.0-maccatalyst26.0, net10.0-browserwasm1.0, net10.0-desktop1.0, net9.0, net9.0-desktop1.0, net9.0-browserwasm1.0, net8.0, net8.0-ios17.5, net8.0-maccatalyst17.5, net8.0-macos14.2, net8.0-macos14.5, net8.0-tvos17.2, netstandard2.1, net481, net471, net462

Class hierarchy
classDiagram
class WasmSequencer
class ISequencer {
    <>
}
ISequencer <|.. WasmSequencer
class IDisposable {
    <>
}
IDisposable <|.. WasmSequencer

Implements: ISequencer, IDisposable

Properties

NameSummary
static DefaultGets the shared WebAssembly sequencer.
NowGets the scheduler's notion of current time.
TimestampGets the sequencer's monotonic timestamp.

Methods

NameSummary
ScheduleSchedules a work item for execution as soon as possible.
DisposeDisposes the drain timer owned by this sequencer.
Inherited members

See also