Table of Contents

Class GuardedSynchronizationJob<TLeft, TRight>

Namespace
NMF.Synchronizations
Assembly
NMF.Synchronizations.dll

Denotes the base class for a synchronization job that is filtered by a guard

public abstract class GuardedSynchronizationJob<TLeft, TRight> : ISynchronizationJob<TLeft, TRight>

Type Parameters

TLeft

The LHS type of the guard

TRight

The RHS type of the guard

Inheritance
GuardedSynchronizationJob<TLeft, TRight>
Implements
ISynchronizationJob<TLeft, TRight>
Derived
Inherited Members

Constructors

GuardedSynchronizationJob(ISynchronizationJob<TLeft, TRight>)

Creates a new guarded synchronization job

public GuardedSynchronizationJob(ISynchronizationJob<TLeft, TRight> inner)

Parameters

inner ISynchronizationJob<TLeft, TRight>

The inner synchronization job

Properties

IsEarly

True, if the job must be executed before any dependency, otherwise False

public bool IsEarly { get; }

Property Value

bool

Methods

CreateTracker(SynchronizationComputation<TLeft, TRight>)

Creates a tracker for the given computation

protected abstract INotifyValue<bool> CreateTracker(SynchronizationComputation<TLeft, TRight> computation)

Parameters

computation SynchronizationComputation<TLeft, TRight>

The computation that shall be tracked

Returns

INotifyValue<bool>

Perform(SynchronizationComputation<TLeft, TRight>, SynchronizationDirection, ISynchronizationContext)

Performs the job

public IDisposable Perform(SynchronizationComputation<TLeft, TRight> computation, SynchronizationDirection direction, ISynchronizationContext context)

Parameters

computation SynchronizationComputation<TLeft, TRight>

The correspondence

direction SynchronizationDirection

The direction of the synchronization

context ISynchronizationContext

The context of the synchronization

Returns

IDisposable

A disposable that will be disposed once the correspondence is broken or null