Exemple #1
0
        public Task ContinueWith(Action_Task continuationAction)
        {
            var task = new Task();

            m_continuation = (t) =>
            {
                continuationAction(task);
                task.Complete();
            };

            if (IsCompleted)
            { // continuation can start directly
                Scheduler.Dispatch(Continue);
            }

            return(task);
        }
Exemple #2
0
        public Task ContinueWith(Func_Task_Task continuationAction)
        {
            Task task = new Task();

            m_continuation = (t) =>
            {
                var newtask = continuationAction(t);
                newtask.ContinueWith(x => task.Complete());
            };

            if (IsCompleted)
            { // continuation can start directly
                Scheduler.Dispatch(Continue);
            }

            return(task);
        }