public virtual ValueTask DisposeAsync()
 {
     UpdateState(TaskRunnerState.Disposed);
     StateSubject.Dispose();
     ProgressSubject.Dispose();
     return(new ValueTask());
 }
 public TaskRunner(int id, TaskRunnerFactoryDelegate factory, ILogger logger) : this(id, logger)
 {
     Factory = factory ?? throw new ArgumentNullException(nameof(factory));
     StateSubject.Init(TaskRunnerState.Stopped);
     ProgressSubject.Init(default);
 protected bool UpdateState(TaskRunnerState state) => StateSubject.Post(state, true);
Пример #4
0
 public override void OnStateExit()
 {
     SetCurrentHook(StateHook.OnExit);
     base.OnStateEntry();
     StateSubject.OnNext(State);
 }