Skip to content

SyncLatestIndexedWitness class

Defined in

Namespace: ReactiveUI.Primitives.Async.Advanced Assembly: ReactiveUI.Primitives.Async.Core.dll Full name: ReactiveUI.Primitives.Async.Advanced.SyncLatestIndexedWitness<T1, T2> Modifiers: public sealed

Summary

View source

Per-source WitnessAsync used by every CombineLatestN subscription. The per-arity class previously declared N hand-rolled OnNextN / OnCompletedN method pairs whose bodies differed only in which Optional<TN> field they wrote and which completion bit they passed to the lifecycle. Pre-building N of these witnesses at subscription time keeps the typing exact and eliminates the per-source method declarations from the per-arity files. The closure cost (one delegate per source for the value-write) is paid once at subscribe and not per emission; the actual per-emission cost is one indirect delegate invoke under the values-lock.

Applies to

net10.0, net10.0-browserwasm1.0, net10.0-desktop1.0, net9.0, net9.0-browserwasm1.0, net9.0-desktop1.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, net462, net481

Class hierarchy
classDiagram
class SyncLatestIndexedWitness~T1,T2~
class WitnessAsync~TSource~
WitnessAsync~TSource~ <|-- SyncLatestIndexedWitness~T1,T2~

Inherits from: WitnessAsync

Constructors

NameSummary
.ctorPer-source [WitnessAsync](# used by every CombineLatestN subscription. The per-arity class previously declared N hand-rolled OnNextN / OnCompletedN...

Methods

NameSummary
OnNextAsyncCoreProcesses the next value in the asynchronous sequence.
OnErrorResumeAsyncCoreHandles an error by providing an asynchronous mechanism to resume execution after an exception occurs.
OnCompletedAsyncCorePerforms asynchronous completion logic when the operation has finished processing the specified result.
Inherited members