Как я могу запустить оба этих метода одновременно в .NET 4.5?
У меня есть метод, который делает 2независимый кусочки логики. Я надеялся, что смогу запустить их обоихв то же время ... и продолжайте только после завершения обоих дочерних методов.
Я пытался обойтиasync/await
синтаксис, но я просто не понимаю.
Вот код:
public PewPew SomeMethod(Foo foo)
{
var cats = GetAllTheCats(foo);
var food = GetAllTheFood(foo);
return new PewPew
{
Cats = cats,
Food = food
};
}
private IList<Cat> GetAllTheCats(Foo foo)
{
// Do stuff, like hit the Db, spin around, dance, jump, etc...
// It all takes some time.
return cats;
}
private IList<Food> GetAllTheFood(Foo foo)
{
// Do more stuff, like hit the Db, nom nom noms...
// It all takes some time.
return food;
}
Итак, с помощью приведенного выше кода я хочу сказать: иди и забирай всех кошек и еду одновременно. Как только мы закончим, верните новыйPewPew
.
Я запутался, потому что я не уверен, какие классы вышеasync
или вернутьTask
и т.д. только два частных? Я также предполагаю, что мне нужно использоватьTask.WaitAll(tasks)
метод, но я не уверен, какнастроить задачи для запуска в то же время.
Предложения, добрые люди?