Table of Contents

Class ReactiveTaskSnapshot<TTask>

Namespace
LfrlAnvil.Reactive.Chrono
Assembly
LfrlAnvil.Reactive.Chrono.dll

Represents a snapshot of reactive task's state.

public sealed record ReactiveTaskSnapshot<TTask> : IEquatable<ReactiveTaskSnapshot<TTask>> where TTask : notnull

Type Parameters

TTask

Reactive task type.

Inheritance
ReactiveTaskSnapshot<TTask>
Implements
Inherited Members

Constructors

ReactiveTaskSnapshot(TTask, Timestamp?, Timestamp?, long, long, long, long, long, long, long, long, long, long, Duration, Duration, FloatingDuration)

Represents a snapshot of reactive task's state.

public ReactiveTaskSnapshot(TTask Task, Timestamp? FirstInvocationTimestamp, Timestamp? LastInvocationTimestamp, long TotalInvocations, long ActiveInvocations, long CompletedInvocations, long DelayedInvocations, long FailedInvocations, long CancelledInvocations, long QueuedInvocations, long MaxQueuedInvocations, long ActiveTasks, long MaxActiveTasks, Duration MinElapsedTime, Duration MaxElapsedTime, FloatingDuration AverageElapsedTime)

Parameters

Task TTask

Reactive task.

FirstInvocationTimestamp Timestamp?

Timestamp of the first invocation.

LastInvocationTimestamp Timestamp?

Timestamp of the last invocation.

TotalInvocations long

Number of total task invocations.

ActiveInvocations long

Number of currently active invocations.

CompletedInvocations long

Number of completed invocations.

DelayedInvocations long

Number of invocations that have been delayed due to maximum concurrency limit.

FailedInvocations long

Number of completed invocations that ended with an error.

CancelledInvocations long

Number of completed invocations that ended due to cancellation.

QueuedInvocations long

Number of currently queued invocations due to maximum concurrency limit.

MaxQueuedInvocations long

Number of maximum queued invocations at the same time.

ActiveTasks long

Number of currently running tasks.

MaxActiveTasks long

Number of maximum running tasks at the same time.

MinElapsedTime Duration

Minimum amount of time taken to complete a single invocation.

MaxElapsedTime Duration

Maximum amount of time taken to complete a single invocation.

AverageElapsedTime FloatingDuration

Average amount of time taken to complete a single invocation.

Properties

ActiveInvocations

Number of currently active invocations.

public long ActiveInvocations { get; init; }

Property Value

long

ActiveTasks

Number of currently running tasks.

public long ActiveTasks { get; init; }

Property Value

long

AverageElapsedTime

Average amount of time taken to complete a single invocation.

public FloatingDuration AverageElapsedTime { get; init; }

Property Value

FloatingDuration

CancelledInvocations

Number of completed invocations that ended due to cancellation.

public long CancelledInvocations { get; init; }

Property Value

long

CompletedInvocations

Number of completed invocations.

public long CompletedInvocations { get; init; }

Property Value

long

DelayedInvocations

Number of invocations that have been delayed due to maximum concurrency limit.

public long DelayedInvocations { get; init; }

Property Value

long

FailedInvocations

Number of completed invocations that ended with an error.

public long FailedInvocations { get; init; }

Property Value

long

FirstInvocationTimestamp

Timestamp of the first invocation.

public Timestamp? FirstInvocationTimestamp { get; init; }

Property Value

Timestamp?

LastInvocationTimestamp

Timestamp of the last invocation.

public Timestamp? LastInvocationTimestamp { get; init; }

Property Value

Timestamp?

MaxActiveTasks

Number of maximum running tasks at the same time.

public long MaxActiveTasks { get; init; }

Property Value

long

MaxElapsedTime

Maximum amount of time taken to complete a single invocation.

public Duration MaxElapsedTime { get; init; }

Property Value

Duration

MaxQueuedInvocations

Number of maximum queued invocations at the same time.

public long MaxQueuedInvocations { get; init; }

Property Value

long

MinElapsedTime

Minimum amount of time taken to complete a single invocation.

public Duration MinElapsedTime { get; init; }

Property Value

Duration

QueuedInvocations

Number of currently queued invocations due to maximum concurrency limit.

public long QueuedInvocations { get; init; }

Property Value

long

SkippedInvocations

Number of skipped invocations.

public long SkippedInvocations { get; }

Property Value

long

Task

Reactive task.

public TTask Task { get; init; }

Property Value

TTask

TotalInvocations

Number of total task invocations.

public long TotalInvocations { get; init; }

Property Value

long