В консольном приложении я создал список задачи, в которых им необходимо добавить три асинхронные задачу:Запуск несколько HttpResponseMessage задач в последовательности
static void Main(string[] args)
{
List<Task> task_list= new List<Task>();
Task task_1=new Task(async() => await Task_method1());
Task task_2=new Task(async() => await Task_method2());
Task task_3=new Task(async() => await Task_method3());
task_list.Add(task_1);
task_list.Add(task_2);
task_list.Add(task_3);
Task.WaitAll(task_list.ToArray());
foreach (Task t in task_list)
{
Console.WriteLine("Task {0} Status: {1}", t.Id, t.Status);
}
Console.ReadKey();
}
А вот определение метода 3 Задачи:
public async Task<HttpResponseMessage> Task_Method1()
{
//Code for Response
return Response;
}
public async Task<HttpResponseMessage> Task_Method2()
{
//Code for Response
return Response;
}
public async Task<HttpResponseMessage> Task_Method3()
{
//Code for Response
return Response;
}
Проблема заключается в том, что они работают параллельно, и нет сериализованного порядка задач. Я много искал, но у меня не получилось подходящее решение для их запуска последовательно. Для справки см изображение ниже:
http://stackoverflow.com/questions/39603997/processing -tasks-sequential/39614002 # 39614002 –
Вы хотите посмотреть ответы в [this] (http://stackoverflow.com/questions/32318860/async-method-not-running-in-parallel) Вопрос. –