本文整理汇总了C#中ITask.Continue方法的典型用法代码示例。如果您正苦于以下问题:C# ITask.Continue方法的具体用法?C# ITask.Continue怎么用?C# ITask.Continue使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ITask
的用法示例。
在下文中一共展示了ITask.Continue方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Return
/// <summary>
/// Provides a method to finish one or more task, after completion of supplied finshed task.
/// </summary>
/// <param name="finishedtask">The task which will check for cmpletion.</param>
/// <param name="returns">The <see cref="TaskResult"/> that defines the current status of a task.</param>
/// <param name="p">The array of tasks, which will be executed.</param>
public void Return(ITask finishedtask, TaskResult returns, params object[] p)
{
if (finishedtask.Origin == null) return;
// This only occurs when a task is started with Task.Empty as origin, that is, the starting task
if (finishedtask.Origin == Task.Empty) finishedtask.Continue(finishedtask.Name, returns, p);
tasks.Remove(finishedtask.Id);
MethodInfo continuedirectmethod = finishedtask.Origin.GetType().GetMethod(string.Format("Continue{0}From{1}", returns.Name, finishedtask.Name), p.Select(param => param == null ? typeof(object) : param.GetType()).ToArray());
if (continuedirectmethod == null)
{
finishedtask.Origin.Continue(finishedtask.Name, returns, p);
}
else
{
continuedirectmethod.Invoke(finishedtask.Origin, p);
}
}