Exemplo n.º 1
0
            public Task <bool> WaitAsync(params Tuple <IJob, int>[] states)
            {
                WaitRequest wr = new WaitRequest(states.Select(s => new Tuple <int, int>(s.Item1.ID, s.Item2)));

                manager.waitRequested.OnNext(new Tuple <NodeJob, WaitRequest>(this, wr));
                return(wr.WaitTask);
            }
Exemplo n.º 2
0
        public Task <bool> WaitAsync(IJob job, int status)
        {
            var wr = new WaitRequest(new Tuple <int, int>[1] {
                new Tuple <int, int>(job.ID, status)
            });

            externalWaitRequested.OnNext(wr);
            return(wr.WaitTask);
        }
Exemplo n.º 3
0
 private void OnExternalWaitRequested(WaitRequest wr)
 {
     wr.CheckStatus(database);
     if (wr.IsComplete)
     {
         wr.Unblock();
     }
     else
     {
         extWaitings.Add(wr);
     }
 }