<PackageReference Include="Relativity.Transfer.Client" Version="7.0.8" />

ScheduledItem<TAbsolute, TValue>

public sealed class ScheduledItem<TAbsolute, TValue> : ScheduledItem<TAbsolute> where TAbsolute : IComparable<TAbsolute>
using System.Collections.Generic; namespace System.Reactive.Concurrency { public sealed class ScheduledItem<TAbsolute, TValue> : ScheduledItem<TAbsolute> where TAbsolute : IComparable<TAbsolute> { private readonly IScheduler _scheduler; private readonly TValue _state; private readonly Func<IScheduler, TValue, IDisposable> _action; public ScheduledItem(IScheduler scheduler, TValue state, Func<IScheduler, TValue, IDisposable> action, TAbsolute dueTime, IComparer<TAbsolute> comparer) : base(dueTime, comparer) { if (scheduler == null) throw new ArgumentNullException("scheduler"); if (action == null) throw new ArgumentNullException("action"); _scheduler = scheduler; _state = state; _action = action; } public ScheduledItem(IScheduler scheduler, TValue state, Func<IScheduler, TValue, IDisposable> action, TAbsolute dueTime) : this(scheduler, state, action, dueTime, (IComparer<TAbsolute>)Comparer<TAbsolute>.Default) { } protected override IDisposable InvokeCore() { return _action(_scheduler, _state); } } }