Hallo,
kann man irgendwie temporäre Methoden als async definieren? Ich möchte folgendes machen:
private async Task DoWork(bool preferB)
{
Action workA = async () =>
{
DoSmthA();
await DoSmthAAsync();
};
Action workB = async () =>
{
DoSmthB();
await DoSmthBAsync();
};
if (preferB)
{
await workB();
await workA();
}
else
{
await workA();
await workB();
}
}
Das ist jedoch nicht kompilierbar, weil man mit await nicht auf void (-Actions) warten kann. Aber wie kann man das stattdessen definieren? Ich möchte nicht generell für workA() und workB() einen Task definieren, da DoSmthA() und DoSmthB() im gleichen Thread
laufen sollen, in dem DoWork() aufgerufen wird. Ich bräuchte für workA() und workB() so etwas wie einen synchronen Task, auf den ich mit await warten kann. Wie könnte man das realisieren?
Gruß
Heiko