Chciałbym utworzyć metodę która wygląda mniej więcej w ten sposób:
public async Task SetupResourcesAsync(...)
{
{...}
List<Task> tasks = new List<Task>();
tasks.Add(Task.Run(() =>
{
{...}
}));
Task.WaitAll(tasks.ToArray());
}
Problem polega na tym iż korzystam z zewnętrznej biblioteki (odpowiedzialna za IO) która nie mam możliwości wykonania pewnych operacji asynchronicznie. W związku z tym nie mogę użyć await.
Tuta:j https://stackoverflow.com/a/17805992/6751581 niby jest ok, ale nie zwraca Taska i ani nie czeka na jego zakończenie, a ja potrzebuje utworzyć ich kilka(naście) i zaczekać na ich zakończenie.
Nie mogę użyć ThreadPoola bo WPF mi na to nie pozwala, macie jakieś pomysły jak to ugryźć?
Jedyne czego potrzebuje to nie "zwiesić" UI.